银联支付相关API封装 Golang实现
go get -u github.com/shima-park/unionpay
可以先安装一个localtunnel 可以方便快捷的实现你的本地web服务通过外网访问,无需修改DNS和防火墙设置
$ npm install -g localtunnel
$ lt --port 9090
your url is: http://eygytquvvu.localtunnel.me
记得修改示例中的对应的pub, pri, cert, mchID配置 项目目录下已经存在银联的测试相关的公钥密钥以及证书 要注意的是go run main.go的时候取的是当前运行目录路径。 如果在example下运行该命令会导致找不到公钥密钥及证书
var (
pub = "key.cert" //加密密钥路径(openssl pkcs12 -in PM_700000000000001_acp.pfx -clcerts -nokeys -out key.cert)
pri = "key.pem" //加密证书路径(openssl pkcs12 -in PM_700000000000001_acp.pfx -nocerts -nodes -out key.pem)
cert = "acp_test_verify_sign_new.cer"
mchID = "700000000000001"
// 默认调用银联正式环境的地址,访问银联测试环境调用 SetTestEnv(true)
up = unionpay.NewPayment(mchID, pub, pri, cert).SetTestEnv(true)
// 示例监听的端口
port = ":9090"
// 通过 lt --port 9090 获取的外网地址
localTunnel = "http://eqfssupbgz.localtunnel.me"
...
)
$ go run example/main.go
具体如何使用请查看example/main.go