这篇文章给大家介绍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进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。