Golang超好用的支付寶支付類庫(kù)
在我的上一篇文章中小編給大家推薦了一款超好用的wechat支付類庫(kù)。今天小編再給大家推薦一個(gè)超好用的支付寶支付類庫(kù)smartwalle/alipay
安裝方式
go module模式
go get github.com/smartwalle/alipay/v3
import github.com/smartwalle/alipay/v3
版本說(shuō)明
- v1 - 最老的版本,實(shí)現(xiàn)了完整的支付功能,目前已停止更新維護(hù);
- v2 - 在 v1 的基礎(chǔ)上進(jìn)行了一些優(yōu)化和規(guī)范調(diào)整,目前已停止更新維護(hù);
- v3 - 支持公鑰證書和普通公鑰進(jìn)行簽名驗(yàn)證,詳情可以參考 https://docs.open.alipay.com/291/105974/ 和 https://docs.open.alipay.com/291/105971/,為目前主要維護(hù)分支;
- master - 和主要維護(hù)分支同步;
準(zhǔn)備工作(配置密鑰和回調(diào)地址)
- 支付寶開放平臺(tái)開發(fā)助手:https://opendocs.alipay.com/open/291/introduce
- 支付寶沙箱環(huán)境配置:https://openhome.alipay.com/platform/AppDaily.htm
詳細(xì)不做贅述,請(qǐng)前往支付寶的官方去查閱: https://opendocs.alipay.com/open/291/105971#LDsXr
工具生成機(jī)器公私鑰
alipayPrivate.png
這個(gè)應(yīng)用公鑰是為了下面去支付寶后臺(tái)生成支付寶公鑰,然后程序驗(yàn)簽是拿應(yīng)用私鑰和支付寶公鑰去驗(yàn)證的
上傳公鑰生成支付寶公鑰
alipayPublickey.png
Wap支付實(shí)例
以下實(shí)例是采用privateKey的認(rèn)證方式測(cè)試的
package main
import ( "fmt"
"github.com/smartwalle/alipay/v3"
)var ( PrivateKey = "MIIEowIBAAKCAQEA+KqKJxCPrBIo0mZZllSs6MPa7huYgaslshn/rgT38OLTXtyXJ7482/iAmoEB+cYCKd7p6BJ5mOtIsUEyLVcS5dnoVX8+nNfzGLmqAaVmTF2V5bFOU3TZFc2kujp2wYTbIIQsPIsN3iC4+47CLIvKie0vPq2cWlMhKTVawuNpEi98Wabzog4aY6FYNm5L/Pz9p0oy7ItZWQD7UngqRhu1JNSgI01MbTdJ2gJ7b+GMyAFvNCPKPfCyfKlSNyJs+m2FxMCvNeX0Gu13YQPieoKIvdMfPp9XnYnvzBVE2goUIkGRon5PPY8ounOQDxepD8IsDmyNBM463+g2Do50SIAzqwIDAQABAoIBACSaffGYJ33twmKOPFu7pSQySFTKbR2RQuA/oXpNMu4bhX+uOvXXs/+xScT0foT017awIIBPz+Rppe6pqSgxbA+3jtKfA2l1BEy8b8EERtWw5PLFscDpL1ddSQU8u+RqmRLlQdm7olPzPyeQcRa7kRnSdyTjy2MkX3pAZ1bOwNWzK3QqcmgDsqfI4XKl2LRS7D89HAwHsIXgID11YGCaRogl8BJj/MTnsFYKJlbEA4lnE3WNzsnKQHtUVPtAYCf4kUe8DIZ/nFGiOIxhYfvecU7ncVBJWpQN1gr1ZJk6KNauMQL2o02EsvqjS1JeWeHUCaLF+gehic20T9+Sn3aiUXkCgYEA/Fi6AQznco4p1MqGrc5cJRw2AuVuhsbAvfeicxKKRnV/cd1hf9kl06o/b//2qCNpWWVMolsJ3p3Mp8S4z7UUxdP/u1QZjTlSPFK4gC/DMTJTTlfwLcFfPdgT7bUDmVEdyTlK78R7Y57VrL7ZWC6LH6rHVIr60IDWtvsbb9f4Jo0CgYEA/EQsHcx6M7kIIelWDfNNUc/aRt9JtUJ9pIOhyZ5VqwSplpteKxQfVYAg+YbxLKBHY/67cT6ckhIOaflDSNJeyyGE/88c61HXrTNyn0RJpZSOD3tg4jn9XifR54qI5/eC2Hz0DJg0bGnCnanXFNKEC7RNBIb/4SuBHwQZDosS8RcCgYAUDZj6bGQYHmQEnPOG7Fc2O7+vCzx1SWYXso4eRuLmJoAyND2DQ2ZWI7lW1ShsxCOjDwHABSwLnM6epmtpViKIdghkgpJlPqDiWlB/H0yLpEwqdaKIgE1pRLqQsUnP7TpIu1zRIPQNPpoMWD49W7WClrewaDr2RsbJU7sicC8wIQKBgQDo1d9GLbnIzYp1ClHUFHGUBl14NpVoiJNA6gHE/rAhZe9FQ+fZqPv2xYkp5mPphZH++Fl3f4uxwpqtM1Tn/Mtjf2+rUDVn+SUxBqBP4g57lq68GWtlwpJZejViGVqdh7SsLkBu83jHa6ImNWGAJYGc7/B6MkQwRyApSXX7F2AHRwKBgF0dXyHgP89wWgoCt2cMknWvVCwkpH7kfL0ugTwnlF86JUZUYH31aPt5JfPuTh6TcZHvZwrDub6gi+IcyaGxqyJplpHmGvjni2Eg/h/45QN/09YlbvaAgWCaZ7Gek79/5qNT10m9ByQFiUESEKCv2N10CCFmRUEySLmEnGwdZdyB"
AppId = "2016101400682323"
AliPublicKey = "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAqjVxT0tRBlfwA1OAcG0yKS2g+R5jaNWGiS/dAjqsIVwYB7re80nT7ujQvT2oIDCmYa4gvqm0/hr0h+f/ib3HZZ2r4jLxan5rEtWJ+FMpwCEhoVJje/AlyEEsBdXzbSXwfjmurY/+Yl43dHUGUL/i3jY/y50IW2+txVZEvFFQgG6oTvf40HD32gMg7NLSuUs7BgOvhayRWjmNv/VF0YvrY4cMpaAXeQZDS65uTJbjEOeTQ4fOqpjZdIKeBI8qiksB1Mfo2gtDwYdNDOL29Ce8pg+CfgFQlq65FwwdlzEai9cNAeiPADyTHdAYFHVKWqJRDXZ8Tiild+4tS/wPOBjpzQIDAQAB"
)func main() { client, err := alipay.New(AppId, PrivateKey, false) if err != nil {
fmt.Println(err.Error()) return
} if err := client.LoadAliPayPublicKey(AliPublicKey); err != nil {
fmt.Println(err.Error()) return
} p := alipay.TradeWapPay{ Trade: alipay.Trade{ NotifyURL: "http.xxx.com",
ReturnURL: "http.xxx.com",
Subject: "測(cè)試支付",
OutTradeNo: "82k7dI3IUd02dsl",
TotalAmount: "100.00",
ProductCode: "test_pay",
}, } url, err := client.TradeWapPay(p) if err != nil {
fmt.Println(err.Error()) return
} payURL := url.String() fmt.Println(payURL)}// ouputhttps://openapi.alipaydev.com/gateway.do?app_id=2016101400682323&biz_content=%7B%22subject%22%3A%22%E6%B5%8B%E8%AF%95%E6%94%AF%E4%BB%98%22%2C%22out_trade_no%22%3A%2282k7dI3IUd02dsl%22%2C%22total_amount%22%3A%22100.00%22%2C%22product_code%22%3A%22test_pay%22%7D&charset=utf-8&format=JSON&method=alipay.trade.wap.pay¬ify_url=http.xxx.com&return_url=http.xxx.com&sign=l7XDQYP%2BSAx62Yy0swjs9uGfaxBDirhqZ4SY7ijopI7Lctif60aJJcBe%2B1EViWga7UDPHHF9wREjInrrflL8QeZyr8jMMgkzPwbAwT5jJRbrOMyd8WWEI%2FgQtXImVsunh6%2BR7HB4H1W4c3so6mMF2rckJ5NhKVT7MVU2GHaIHx6OISe4nzeTDkEA7p1UzYoQU8w0Dfo2pOyHtwn%2BkQ0IdgJl%2FMcHxzpFz5xec2We5KptoL0SdHZlmoyJUx0On9zMjd2v1M1dRvgK2p0VQRy7B%2F%2BqFrn3jxd95npOHacqEHEANo6UQ88LffP8iEj6fozZ7xDnGUyHNdaIuXopGPpN0w%3D%3D&sign_type=RSA2×tamp=2020-09-01+22%3A44%3A41&version=1.0
手機(jī)瀏覽器或web瀏覽器訪問
wapPayali.png
當(dāng)然這個(gè)是沙箱環(huán)境的app,Android/ target=_blank class=infotextkey>安卓手機(jī)可以去下載一個(gè),iphone的暫時(shí)還沒有
更多操作可查看 https://pkg.go.dev/mod/github.com/smartwalle/alipay/v3






