項目需求討論-通過銀行卡號來辨別銀行及獲取銀行圖片

大家好,又到了項目需求討論系列舔清,項目需求系列都是我在項目中真實(shí)碰到的需求,所以也有可能你們以后也會遇到曲初,我寫的不一定是最好的方法体谒,但是我的項目中是這么使用的,所以如果大家有更好的臼婆,可以提出來抒痒,謝謝了。

--------------------------------正文君出來0涔印9氏臁傀广!---------------------------------

我們可以看到,在收款賬號處彩届,當(dāng)填寫相應(yīng)的銀行卡的號碼后伪冰,下面就會出現(xiàn)相應(yīng)的這個卡所屬的銀行信息。

方法一:

最剛開始我肯定是認(rèn)為這個肯定是根據(jù)卡號來判斷不同銀行的樟蠕,比如每個銀行的前面都是有規(guī)律的贮聂。然后一搜,果不其然寨辩,大家可以看下下面鏈接:
銀行卡號編碼規(guī)則

引用文章里面的結(jié)論:
中國國內(nèi)銀行卡號吓懈,前六位為發(fā)卡行BIN號(IIN號,上圖最后一列不要看錯了)靡狞,跟著四位可能為地區(qū)識別碼(歸屬地區(qū)耻警,我無法確定所有銀行卡號是否都是),中間位個人賬號標(biāo)識耍攘,最后一位為驗(yàn)證碼榕栏,總的長度從16到19都有(其實(shí)我對此數(shù)據(jù)的時效性有點(diǎn)懷疑,因?yàn)樗€是稱之為BIN號蕾各,現(xiàn)在應(yīng)該稱之為IIN號了)榛了。除非有一張關(guān)于銀行卡IIN號的基礎(chǔ)數(shù)據(jù)表势告,無法很準(zhǔn)確的判定銀行卡號的位數(shù)锐涯,當(dāng)然對于幾個大的銀行可能是比較好確定的著瓶。

所以我們就知道了土童,前6位就可以來判斷我們輸入的卡號是什么銀行了俐银。但是大家也知道链沼,這時候我們就需要一個參考表了讨,來進(jìn)行這個前六位對應(yīng)獲取是什么銀行内颗,我看了下钧排,網(wǎng)上很多的文章放出來的對應(yīng)表都有點(diǎn)老,數(shù)據(jù)更新不及時均澳。所以現(xiàn)在拿來用有點(diǎn)顯得out了恨溜。我看了下。這個里面稍微全點(diǎn)找前,但是我不保證很完全:
全球銀行的銀行卡號及信息

拿到對應(yīng)表糟袁,就要放到項目中去,然后用自己的六位數(shù)去那么多對應(yīng)里面一個個去比較躺盛,我又在網(wǎng)上看到一篇项戴,寫的挺好,通過二分查找法來比較:
android根據(jù)銀行卡卡號前6位獲得歸屬銀行

方法二:

大家平常用到這個輸入銀行卡的地方是哪里槽惫?周叮?我想應(yīng)該大部分人和我一樣吧辩撑,是在支付寶,沒錯仿耽,支付寶中當(dāng)我們輸入了卡號槐臀,就可以獲取我們輸入卡號的信息。那么他們也一定是通過某種方式獲取氓仲。后來我網(wǎng)上搜索水慨,發(fā)現(xiàn)支付寶的這個功能的接口居然是暴露出來的。

獲取方式:
支付寶提供的接口敬扛。按以下格式發(fā)送HTTP請求即可晰洒。
"https://ccdcapi.alipay.com/validateAndCacheCardInfo.json?_input_charset=utf-8&cardNo=銀行卡卡號&cardBinCheck=true"
其中輸入上述的銀行卡卡號替換成我們輸入框中所填入的銀行卡號即可。

返回也是JSON形式:
{ "bank": "ABC", "cardType": "DC", "key": "6228430120000000000", "messages": [], "stat": "ok", "validated": true }

這時候我們就可以看到bank這個字段啥箭,是“ABC”谍珊。那我們怎么知道ABC這個標(biāo)號是什么呢。

那我們當(dāng)然是要去支付寶的官網(wǎng)去找:
https://ab.alipay.com/i/yinhang.htm
這個網(wǎng)頁是與支付寶合作的銀行的列表急侥,大家是不是很郁悶砌滞,不是說好的是英文對應(yīng)的銀行編碼嗎,先讓大家知道怎么看坏怪,沒錯贝润,我們只要查看網(wǎng)頁源代碼,就會發(fā)現(xiàn)铝宵,一個個銀行對應(yīng)的英文編碼打掘。
比如:
<span title="溫州銀行" class="icon WZCB">溫州銀行</span> <span title="中國民生銀行" class="icon CMBC">中國民生銀行</span>
等等NNN個等。

但是我們總不能每個都去上面粘貼復(fù)制下來吧鹏秋,不用怕尊蚁,有朋友幫我們弄好了腳本直接去網(wǎng)頁上幫我們拔了下來。

{
  "SRCB": "深圳農(nóng)村商業(yè)銀行", 
  "BGB": "廣西北部灣銀行", 
  "SHRCB": "上海農(nóng)村商業(yè)銀行", 
  "BJBANK": "北京銀行", 
  "WHCCB": "威海市商業(yè)銀行", 
  "BOZK": "周口銀行", 
  "KORLABANK": "庫爾勒市商業(yè)銀行", 
  "SPABANK": "平安銀行", 
  "SDEB": "順德農(nóng)商銀行", 
  "HURCB": "湖北省農(nóng)村信用社", 
  "WRCB": "無錫農(nóng)村商業(yè)銀行", 
  "BOCY": "朝陽銀行", 
  "CZBANK": "浙商銀行", 
  "HDBANK": "邯鄲銀行", 
  "BOC": "中國銀行", 
  "BOD": "東莞銀行", 
  "CCB": "中國建設(shè)銀行", 
  "ZYCBANK": "遵義市商業(yè)銀行", 
  "SXCB": "紹興銀行", 
  "GZRCU": "貴州省農(nóng)村信用社", 
  "ZJKCCB": "張家口市商業(yè)銀行", 
  "BOJZ": "錦州銀行", 
  "BOP": "平頂山銀行", 
  "HKB": "漢口銀行", 
  "SPDB": "上海浦東發(fā)展銀行", 
  "NXRCU": "寧夏黃河農(nóng)村商業(yè)銀行", 
  "NYNB": "廣東南粵銀行", 
  "GRCB": "廣州農(nóng)商銀行", 
  "BOSZ": "蘇州銀行", 
  "HZCB": "杭州銀行", 
  "HSBK": "衡水銀行", 
  "HBC": "湖北銀行", 
  "JXBANK": "嘉興銀行", 
  "HRXJB": "華融湘江銀行", 
  "BODD": "丹東銀行", 
  "AYCB": "安陽銀行", 
  "EGBANK": "恒豐銀行", 
  "CDB": "國家開發(fā)銀行", 
  "TCRCB": "江蘇太倉農(nóng)村商業(yè)銀行", 
  "NJCB": "南京銀行", 
  "ZZBANK": "鄭州銀行", 
  "DYCB": "德陽商業(yè)銀行", 
  "YBCCB": "宜賓市商業(yè)銀行", 
  "SCRCU": "四川省農(nóng)村信用", 
  "KLB": "昆侖銀行", 
  "LSBANK": "萊商銀行", 
  "YDRCB": "堯都農(nóng)商行", 
  "CCQTGB": "重慶三峽銀行", 
  "FDB": "富滇銀行", 
  "JSRCU": "江蘇省農(nóng)村信用聯(lián)合社", 
  "JNBANK": "濟(jì)寧銀行", 
  "CMB": "招商銀行", 
  "JINCHB": "晉城銀行JCBANK", 
  "FXCB": "阜新銀行", 
  "WHRCB": "武漢農(nóng)村商業(yè)銀行", 
  "HBYCBANK": "湖北銀行宜昌分行", 
  "TZCB": "臺州銀行", 
  "TACCB": "泰安市商業(yè)銀行", 
  "XCYH": "許昌銀行", 
  "CEB": "中國光大銀行", 
  "NXBANK": "寧夏銀行", 
  "HSBANK": "徽商銀行", 
  "JJBANK": "九江銀行", 
  "NHQS": "農(nóng)信銀清算中心", 
  "MTBANK": "浙江民泰商業(yè)銀行", 
  "LANGFB": "廊坊銀行", 
  "ASCB": "鞍山銀行", 
  "KSRB": "昆山農(nóng)村商業(yè)銀行", 
  "YXCCB": "玉溪市商業(yè)銀行", 
  "DLB": "大連銀行", 
  "DRCBCL": "東莞農(nóng)村商業(yè)銀行", 
  "GCB": "廣州銀行", 
  "NBBANK": "寧波銀行", 
  "BOYK": "營口銀行", 
  "SXRCCU": "陜西信合", 
  "GLBANK": "桂林銀行", 
  "BOQH": "青海銀行", 
  "CDRCB": "成都農(nóng)商銀行", 
  "QDCCB": "青島銀行", 
  "HKBEA": "東亞銀行", 
  "HBHSBANK": "湖北銀行黃石分行", 
  "WZCB": "溫州銀行", 
  "TRCB": "天津農(nóng)商銀行", 
  "QLBANK": "齊魯銀行", 
  "GDRCC": "廣東省農(nóng)村信用社聯(lián)合社", 
  "ZJTLCB": "浙江泰隆商業(yè)銀行", 
  "GZB": "贛州銀行", 
  "GYCB": "貴陽市商業(yè)銀行", 
  "CQBANK": "重慶銀行", 
  "DAQINGB": "龍江銀行", 
  "CGNB": "南充市商業(yè)銀行", 
  "SCCB": "三門峽銀行", 
  "CSRCB": "常熟農(nóng)村商業(yè)銀行", 
  "SHBANK": "上海銀行", 
  "JLBANK": "吉林銀行", 
  "CZRCB": "常州農(nóng)村信用聯(lián)社", 
  "BANKWF": "濰坊銀行", 
  "ZRCBANK": "張家港農(nóng)村商業(yè)銀行", 
  "FJHXBC": "福建海峽銀行", 
  "ZJNX": "浙江省農(nóng)村信用社聯(lián)合社", 
  "LZYH": "蘭州銀行", 
  "JSB": "晉商銀行", 
  "BOHAIB": "渤海銀行", 
  "CZCB": "浙江稠州商業(yè)銀行", 
  "YQCCB": "陽泉銀行", 
  "SJBANK": "盛京銀行", 
  "XABANK": "西安銀行", 
  "BSB": "包商銀行", 
  "JSBANK": "江蘇銀行", 
  "FSCB": "撫順銀行", 
  "HNRCU": "河南省農(nóng)村信用", 
  "COMM": "交通銀行", 
  "XTB": "邢臺銀行", 
  "CITIC": "中信銀行", 
  "HXBANK": "華夏銀行", 
  "HNRCC": "湖南省農(nóng)村信用社", 
  "DYCCB": "東營市商業(yè)銀行", 
  "ORBANK": "鄂爾多斯銀行", 
  "BJRCB": "北京農(nóng)村商業(yè)銀行", 
  "XYBANK": "信陽銀行", 
  "ZGCCB": "自貢市商業(yè)銀行", 
  "CDCB": "成都銀行", 
  "HANABANK": "韓亞銀行", 
  "CMBC": "中國民生銀行", 
  "LYBANK": "洛陽銀行", 
  "GDB": "廣東發(fā)展銀行", 
  "ZBCB": "齊商銀行", 
  "CBKF": "開封市商業(yè)銀行", 
  "H3CB": "內(nèi)蒙古銀行", 
  "CIB": "興業(yè)銀行", 
  "CRCBANK": "重慶農(nóng)村商業(yè)銀行", 
  "SZSBK": "石嘴山銀行", 
  "DZBANK": "德州銀行", 
  "SRBANK": "上饒銀行", 
  "LSCCB": "樂山市商業(yè)銀行", 
  "JXRCU": "江西省農(nóng)村信用", 
  "ICBC": "中國工商銀行", 
  "JZBANK": "晉中市商業(yè)銀行", 
  "HZCCB": "湖州市商業(yè)銀行", 
  "NHB": "南海農(nóng)村信用聯(lián)社", 
  "XXBANK": "新鄉(xiāng)銀行", 
  "JRCB": "江蘇江陰農(nóng)村商業(yè)銀行", 
  "YNRCC": "云南省農(nóng)村信用社", 
  "ABC": "中國農(nóng)業(yè)銀行", 
  "GXRCU": "廣西省農(nóng)村信用", 
  "PSBC": "中國郵政儲蓄銀行", 
  "BZMD": "駐馬店銀行", 
  "ARCU": "安徽省農(nóng)村信用社", 
  "GSRCU": "甘肅省農(nóng)村信用", 
  "LYCB": "遼陽市商業(yè)銀行", 
  "JLRCU": "吉林農(nóng)信", 
  "URMQCCB": "烏魯木齊市商業(yè)銀行", 
  "XLBANK": "中山小欖村鎮(zhèn)銀行", 
  "CSCB": "長沙銀行", 
  "JHBANK": "金華銀行", 
  "BHB": "河北銀行", 
  "NBYZ": "鄞州銀行", 
  "LSBC": "臨商銀行", 
  "BOCD": "承德銀行", 
  "SDRCU": "山東農(nóng)信", 
  "NCB": "南昌銀行", 
  "TCCB": "天津銀行", 
  "WJRCB": "吳江農(nóng)商銀行", 
  "CBBQS": "城市商業(yè)銀行資金清算中心", 
  "HBRCU": "河北省農(nóng)村信用社"
}

好了侣夷,現(xiàn)在我們已經(jīng)知道這個卡的所屬銀行了横朋,如果我們還拿到這個銀行的圖片什么的,怎么辦百拓,還是要感謝阿里爸爸琴锭,還是有接口:

https://apimg.alipay.com/combo.png?d=cashier&t=銀行代碼

多個銀行代碼可用半角逗號隔開,生成sprite圖片耐版。
上面的銀行代碼就是我們上面的對應(yīng)表中的英文字段祠够。
比如我們看到對應(yīng)表中的農(nóng)行是ABC,那我們替換成ABC粪牲,就可以看到返回了這個圖片給我們古瓤。
例子:
https://apimg.alipay.com/combo.png?d=cashier&t=ABC
會生成農(nóng)業(yè)銀行的logo圖片。


特別要感謝:cnbankcard,不然我也不會知道有這么個接口落君。

所以這個需求我也就這么完成了穿香。下次繼續(xù)介紹我項目中遇到的具體需求。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末绎速,一起剝皮案震驚了整個濱河市皮获,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌纹冤,老刑警劉巖洒宝,帶你破解...
    沈念sama閱讀 211,639評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異萌京,居然都是意外死亡雁歌,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,277評論 3 385
  • 文/潘曉璐 我一進(jìn)店門知残,熙熙樓的掌柜王于貴愁眉苦臉地迎上來靠瞎,“玉大人,你說我怎么就攤上這事求妹》ρ危” “怎么了?”我有些...
    開封第一講書人閱讀 157,221評論 0 348
  • 文/不壞的土叔 我叫張陵制恍,是天一觀的道長父能。 經(jīng)常有香客問我,道長吧趣,這世上最難降的妖魔是什么法竞? 我笑而不...
    開封第一講書人閱讀 56,474評論 1 283
  • 正文 為了忘掉前任,我火速辦了婚禮强挫,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘薛躬。我一直安慰自己俯渤,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,570評論 6 386
  • 文/花漫 我一把揭開白布型宝。 她就那樣靜靜地躺著八匠,像睡著了一般。 火紅的嫁衣襯著肌膚如雪趴酣。 梳的紋絲不亂的頭發(fā)上梨树,一...
    開封第一講書人閱讀 49,816評論 1 290
  • 那天,我揣著相機(jī)與錄音岖寞,去河邊找鬼抡四。 笑死,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的指巡。 我是一名探鬼主播淑履,決...
    沈念sama閱讀 38,957評論 3 408
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼藻雪!你這毒婦竟也來了秘噪?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,718評論 0 266
  • 序言:老撾萬榮一對情侶失蹤勉耀,失蹤者是張志新(化名)和其女友劉穎指煎,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體便斥,經(jīng)...
    沈念sama閱讀 44,176評論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡至壤,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,511評論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了椭住。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片崇渗。...
    茶點(diǎn)故事閱讀 38,646評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖京郑,靈堂內(nèi)的尸體忽然破棺而出宅广,到底是詐尸還是另有隱情,我是刑警寧澤些举,帶...
    沈念sama閱讀 34,322評論 4 330
  • 正文 年R本政府宣布跟狱,位于F島的核電站,受9級特大地震影響户魏,放射性物質(zhì)發(fā)生泄漏驶臊。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,934評論 3 313
  • 文/蒙蒙 一叼丑、第九天 我趴在偏房一處隱蔽的房頂上張望关翎。 院中可真熱鬧,春花似錦鸠信、人聲如沸纵寝。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,755評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽爽茴。三九已至,卻和暖如春绰垂,著一層夾襖步出監(jiān)牢的瞬間室奏,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,987評論 1 266
  • 我被黑心中介騙來泰國打工劲装, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留胧沫,地道東北人昌简。 一個月前我還...
    沈念sama閱讀 46,358評論 2 360
  • 正文 我出身青樓,卻偏偏與公主長得像琳袄,于是被迫代替她去往敵國和親江场。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,514評論 2 348

推薦閱讀更多精彩內(nèi)容