最新項(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é)的對象或數(shù)字,而不是“Sequence”。奇奇怪怪的報(bào)錯(cuò),不知道原因,因?yàn)橛玫氖枪俜降膕dk調(diào)用的,按理來說只有可能是我的問題。
找了網(wǎng)上的解決方案發(fā)現(xiàn),原來因?yàn)樗借€的問題,支付寶的私鑰分為兩種格式,PKCS8和PKCS1,如果這里填了不正確的格式,就會報(bào)這個(gè)錯(cuò)誤,所以我們只需要轉(zhuǎn)換一下秘鑰的格式就可以了。
官方文檔標(biāo)明了PKCS8用于java ,非JAVA使用PKCS1,我用的是Python來實(shí)現(xiàn)的,所以我們需要用PKCS1的秘鑰格式,轉(zhuǎn)換的方式也很簡單,使用支付寶開放平臺秘鑰工具就可以自動轉(zhuǎn)換秘鑰格式。

這里使用很方便,只需要把秘鑰貼進(jìn)去轉(zhuǎn)換,他就會自動識別格式并且轉(zhuǎn)換成另外一種格式。
關(guān)鍵詞:



