支付宝接入总结

本文总结了支付宝的不同支付方式,包括APP支付、手机网站支付和电脑网站支付,强调了签名参数获取和请求方式的重要性。针对签名问题,讨论了POST和GET请求的差异,并指出在使用POST请求时需要注意URL编码。验签部分详细阐述了异步回调、退款、退款查询和关闭订单的验签规则,以及在处理过程中遇到的编码问题,如GBK编码导致的处理挑战。

1.分类

目前支付宝支付分类为:

APP支付:商家APP向支付宝APP发起请求,使用SDK,支付方法为alipay.trade.app.pay

手机网站支付:手机网页发起支付请求,貌似可以get也可以post,ajax祝你幸福,效果是首先唤起支付宝APP,不行转为网页收银台帐号密码支付,支付方法为alipay.trade.wap.pay

电脑网站支付:电脑网页发起支付请求,转向网页收银台,可以帐号密码支付也可以扫码支付,支付方法为alipay.trade.page.pay

支付时统一需要向后台获取签名参数,然后发起请求

但是支付宝还有一些其他接口,alipay.trade.pay,alipay.trade.create,alipay.trade.precreate等,这些接口主要用户线下扫码或者条码支付,虽然能生成二维码,但是不是给网页支付使用的,网页支付是扫支付宝网页收银台的码

 

 

2.请求方式

在文档、demo当中看到过post、get请求方式,事实上都是可以的,但是有一个字符转义的问题,我遇到的情况是:

前端form表单提交post请求,成功

后端使用nodejs的request库提交post请求失败,一直签名失败,我直接拼接的签名字符串,没有url编码!!!!!没有url编码!!!!

后端使用库发出get请求,查询字符串用qs库生成,一次成功

所以说,与其去测试如何对参数进行转义,不如就使用查询字符串吧,反正查询字符串肯定是要url编码的,但是这个过程应该比较统一,没有什么异议

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值