{"repo":"smartwalle/alipay","free":true,"listed":false,"github":"https://github.com/smartwalle/alipay","clone":"git clone https://github.com/smartwalle/alipay.git","description":"支付宝 AliPay SDK for Go, 集成简单，功能完善，持续更新，支持公钥证书和普通公钥进行签名和验签，支持文件上传和接口内容加密。","language":"Go","stars":2113,"topics":["alipay","go","pay","golang","alipaysdk"],"license":"MIT","category":"api-integrations-sdks","readme_excerpt":"AliPay SDK for Golang 安装 启用 Go module 未启用 Go module 帮助 在集成的过程中有遇到问题，欢迎加 QQ 群 203357977 讨论。 其它支付 苹果支付 https://github.com/smartwalle/apple PayPal https://github.com/smartwalle/paypal 银联支付 https://github.com/smartwalle/unionpay 关于各分支（版本) v1 - 最老的版本，实现了完整的支付功能，目前已停止更新维护； v2 - 在 v1 的基础上进行了一些优化和规范调整，目前已停止更新维护； v3 - 支持 公钥证书 和 普通公钥 进行签名验证，详情可以参考 https://docs.open.alipay.com/291/105974/ 和 https://docs.open.alipay.com/291/105971/，为目前主要维护分支； master - 和主要维护分支同步； 推荐使用 v3 版本 v3 版本如何初始化 下面用到的 privateKey 需要特别注意一下，如果是通过“支付宝开发平台开发助手”创建的CSR文件，在 CSR 文件所在的目录下会生成相应的私钥文件，我们需要使用该私钥进行签名。 关于应用私钥 (privateKey) 应用私钥是我们通过工具生成的私钥，调用支付宝接口的时候，我们需要使用该私钥对参数进行签名。 关于 alipay.New() 函数中的最后一个参数 isProduction 支付宝提供了用于开发时测试的 sandbox 环境，对接的时候需要注意相关的 app id 和密钥是 sandbox 环境还是 production 环境的。如果是 sandbox 环境，本参数应该传 false，否则为 true。 公钥证书模式 如果采用公钥证书方式进行验证签名，需要调用以下几个方法加载证书信息，所有证书都是从支付宝创建的应用处下载，参考 https://docs.open.alipay.com/291/105971/ 和 https://docs.open.alipay.com/291/105972/ 普通公钥模式 需要注意此处用到的公钥是 支付宝公钥 ，不是我们用工具生成的应用公钥。 如何查看支付宝公钥？ 特别注意： 公钥证书 和 普通公钥 不能同时存在，只能选择其中一种。 接口内容加密 详细内容访问 https://opendocs.alipay.com/common/02mse3 进行了解。 如果需要开启该功能，只需调用一下 SetEncryptKey() 方法。 如果不需要开启该功能，则不用调用该方法。 签名验证 内部已实现对支付宝返回的数据进行签名验证，详细信息请参考自行实现验签。 需要自行对签名验证的场景有 同步回调(return url) 和 异步通知(notify url) 的 HTTP 处理函数。 同步回调(return url) 发起支付(网页支付)的时候，如果有提供 ReturnURL 参数，那么支付成功之后，支付宝会将浏览器重定向到该 URL，并附带上相关的参数。 对支付宝提供的参数进行签名验证： 异步通知(notify url) 有支付或者其它动作发生后，支付宝服务器会调用我们提供的 NotifyURL，并向其传递相关的信息。参考手机网站支付结果异步通知。 解析通知并验证签名： 支持 RSA2 签名及验证 采用 RSA2 签名，不再提供 RSA 的支持。 特别注意 提供给支付","default_branch":null,"files":null,"tree":[],"storefront":"/r/smartwalle","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/smartwalle/alipay/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}