您好,登錄后才能下訂單哦!
這篇文章給大家介紹Python中怎么實現一個支付接口,內容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。
首先定義數據如下:用的測試平臺的數據
data=[ "", ("p0_Cmd","Buy"), ("p1_MerId","10000432521"), ("p2_Order",transid), ("p3_Amt",str(fee)), ("p4_Cur","CNY"), ("p5_Pid","測試一下嘛"), ("p6_Pcat","test"), ("p7_Pdesc","test"), ("p8_Url","http://"), ("p9_SAF","1"), ("pa_MP","None"), ("pd_FrpId","ICBC-NET"), ("pr_NeedResponse","1"), ]
***個“”不是打醬油的,在下面的運算是有用處的,不要當我寫錯了忽略掉。
首先我們要根據數據來構建待加密的驗證源串,根據文檔描述也就是把每個field的值連接起來,注意,不加任何間隔符,你能猜出是如何構造這個字符串的嗎?寫這個文檔的人多半語文重修不下十次根據這段文檔***有用的一句話參看了源碼,于是把源碼里啰哩吧嗦的一大篇八股文改為一行代碼
origin_str=reduce(lambda x,y:"%s%s"%(x,y[1]),data)
這里用了reduce函數,就是挨個取出list里的數據和下一數據累計運算,運算的方法就是把前一次運算的結果和下一個item作為參數傳給reduce的***個參數,這里是一個lambda表達式,x就是前一次運算的結果,y就是下一個item,因為表達式里默認***次運算的結果是字符串,所以這就是在data這個列表頭上的***個打醬油的””的來歷接下來需要用hmac來加密字符串,在python,我在shell里輸入
import hmac
關于Python中怎么實現一個支付接口就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。