支付坑的故事 -最主要的是微信 ,如下都是本身的思考得来的,不免有不足之处。若有错误,欢迎给位批评指正!也可在下面留下你的QQ 我们一块儿讨论问题!php
总结:楼主感受微信支付是最坑人的-没有之一!api
1:微信支付步骤以下:微信支付原理:https://pay.weixin.qq.com/wiki/doc/api/app.php?chapter=8_3 安全
统一下单接口:https://pay.weixin.qq.com/wiki/doc/api/app.php?chapter=9_1 服务器
请仔细阅读官方文档! 查看那些是必须参数,那些是非必须参数!须要注意的是:加密规则 加密规则 加密规则!请点击进去详细阅读。还有支付的单位都是元。微信
微信公众平台支付接口调试工具:https://pay.weixin.qq.com/wiki/tools/signverify/ 能够在这验证你的参数是否正确。app
2:客户端支付分为两种方式微信公众平台
1:客户端本身调用统一下单接口 ,而后在客户端本地进行签名加密,而后调起微信支付。工具
2:后台服务器(这里直本身APP的后台)调用统一下单接口,APP调用一个接口,直接返回支付须要的微信支付
这六个字段。加密
总结:在2015年12份左右的demo中,很明确的表示第一种方式不建议在用(固然也能够用)。大部分都用第二中方式。
缘由:第一种方式支付的缺点以下:
1 :第一种方式暴露了APPID 和partnerId (商户API密钥)、MCH_ID商户号。APP_SECRET这个没用!!不安全。毕竟抓包以及破译仍是存在的。再者不须要进行签名和加密了!
2 :第一种支付方式发起支付须要和服务器交互三次,用户体验太差。和微信后台一次(统一下单)、和本身的后台交互两次(一次传递给后台生成的预支付Id和参数,一次支付以后 支付状态的获取。)
第二方式优势以下:
1:后台进行签名和加密,这样不会暴露上面的关键字段。客户端也剩下进行签名和加密的步骤了。
2:交互次数减小位两次,也符合用户体验。
总结 :最主要是为了安全考虑!
3:常见的错误:
/*我先整理总结一下在发*/