最新項(xiàng)目,開發(fā)支付寶預(yù)授權(quán)功能,使用的是官方的SDK,在調(diào)用的時(shí)候卻報(bào)錯(cuò)了:int() argument must be a string, a bytes-like object or a number, not “Sequence”。直接翻譯報(bào)錯(cuò)的內(nèi)容是:int()參數(shù)必須是字符串、類似字節(jié)的對(duì)象或數(shù)字,而不是“Sequence”。奇奇怪怪的報(bào)錯(cuò),不知道原因,因?yàn)橛玫氖枪俜降膕dk調(diào)用的,按理來(lái)說(shuō)只有可能是我的問題。
找了網(wǎng)上的解決方案發(fā)現(xiàn),原來(lái)因?yàn)樗借€的問題,支付寶的私鑰分為兩種格式,PKCS8和PKCS1,如果這里填了不正確的格式,就會(huì)報(bào)這個(gè)錯(cuò)誤,所以我們只需要轉(zhuǎn)換一下秘鑰的格式就可以了。
官方文檔標(biāo)明了PKCS8用于java ,非JAVA使用PKCS1,我用的是Python來(lái)實(shí)現(xiàn)的,所以我們需要用PKCS1的秘鑰格式,轉(zhuǎn)換的方式也很簡(jiǎn)單,使用支付寶開放平臺(tái)秘鑰工具就可以自動(dòng)轉(zhuǎn)換秘鑰格式。
這里使用很方便,只需要把秘鑰貼進(jìn)去轉(zhuǎn)換,他就會(huì)自動(dòng)識(shí)別格式并且轉(zhuǎn)換成另外一種格式。
下一篇: 沒有了
關(guān)鍵詞: