如今面对N种快速支付的通道,所以在相关的支持通道的平台中,竞争就会产生,以下的文章就是对Python支付接口的实际操作方案的具体介绍,以下就是文章的相关内容的具体介绍。忘你会有所收获。
创新互联公司于2013年开始,公司以成都网站设计、成都做网站、外贸网站建设、系统开发、网络推广、文化传媒、企业宣传、平面广告设计等为主要业务,适用行业近百种。服务企业客户成百上千,涉及国内多个省份客户。拥有多年网站建设开发经验。为企业提供专业的网站建设、创意设计、宣传推广等服务。 通过专业的设计、独特的风格,为不同客户提供各种风格的特色服务。
进入主题,今天的任务是要打通支付和支付通知接口,根据一般性规则,通过http协议的支付接口的一般设计都是,通过N个field或者查询参数传递数据,其中一个是验证串,防止篡改数据,每个申请了Python支付接口的用户都给了一个编号,相当于用户名,一个key,相当于密码,用于加密防篡改字段的盐值。
易宝的字段定义在文档中有,这个文档到处能下到,对发起请求的url这里文档倒没有什么错,但是文档里的例子是POST,把数据放到隐藏表单里,我这里通过构造Get的querystring的方式来发送数据。
根据文档,首先定义数据如下:用的测试平台的数据
- 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支付接口是如何实现的步骤的部分介绍。
文章名称:详解Python实现支付接口
浏览地址:http://www.shufengxianlan.com/qtweb/news27/404577.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联