.net支付宝SDK接入这些坑你必须知道

最近两天应业务需要接入支付宝支付。服务端采用.net开发 。遇到了不少的坑。无聊是后台配置还是各种签名。各种蛋疼。这里分享给大家我的爬坑经历。【这里一沙盒应用为例】

坑一:你得明白RSA 私钥 公钥 支付宝公钥是三个东西

1、用官方签名工具生成RSA 私钥 公钥或则OpenSSL 生成都可以详情见官方文档:https://doc.open.alipay.com/docs/doc.htm?spm=a219a.7629140.0.0.B2uDaW&treeId=291&articleId=105971&docType=1

2、然后私钥自己使用生成客户端orderPayInfo使用,公钥录入支付宝后台 然后就会得到一个支付宝公钥了。

坑二:支付宝签名工具的JAVA和非JAVA的密钥是不一样的。不能混用。各个语言系统RAS算法封装有差异的

1、非JAVA同学请老老实实选择。非JAVA生产密钥。

坑三【官方文档不负责】:居然少个参数。异步通知文档里面居然少了auth_app_id 这个参数 导致我验签不成功

1、异步通知处理的时候加上auth_app_id参数。再处理验签。

详细流程

1、首先你自己去申请支付宝》创建APP》签约商户 。这些就不用多说了。

2、配置需要配置的地方主要有;密钥和异步消息通知地址:签名方式选择一种就OK了

3、生成客户端支付订单使用私钥生成。按照官方文档:https://doc.open.alipay.com/docs/doc.htm?spm=a219a.7629140.0.0.0VbgH3&treeId=204&articleId=105465&docType=1

.net同学参考

4、异步接受消息验签主要,注意使用支付宝公钥【不是RSA公钥】。加上auth_app_id参数

.net同学参考

原文地址:https://www.cnblogs.com/wangboy91/p/6806918.html