博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
beego框架/golang语言调用支付宝支付接口
阅读量:6588 次
发布时间:2019-06-24

本文共 1282 字,大约阅读时间需要 4 分钟。

1. 支付宝开放平台登录

使用已有的支付宝账号即可

 

由于官方没有提供go语言支付的SDK,所以在github找了很长时间找到了一个能用的(累。。。)

 

 

 

2.  关于沙箱环境(开发模拟环境)

 

 

登录后,在页面顶部可以选择进入沙箱环境设置页面

 

3. 支付宝开发者文档

电脑网站支付

 

4. 电脑网站支付流程

 

 

 

5. 使用go工具包

https://github.com/smartwalle/alipay

安装

go get github.com/smartwalle/alipay

生成密文件

openssl

OpenSSL> genrsa -out app_private_key.pem   2048  # 私钥

OpenSSL> rsa -in app_private_key.pem -pubout -out app_public_key.pem # 导出公钥

OpenSSL> exit

 

cat app_publict_key.pem 查看公钥的内容

 

-----BEGIN PUBLIC KEY----------END PUBLIC KEY-----中间的内容保存在支付宝的用户配置中(沙箱或者正式)

 

 

 

下载支付宝的公钥文件

 

beego+golang直接调用的代码

 

支付代码:

var privateKey = "写入私钥"

 

var appId = "支付宝配置可以拿到APPID"

var aliPublicKey = "写入私钥"

 

var client = alipay.New(appId, aliPublicKey, privateKey, false)

 

//alipay.trade.page.pay

var p = alipay.AliPayTradePagePay{}

p.NotifyURL = "http://生成环境IP加端口/user/payOk"

p.ReturnURL = "http://生成环境IP加端口/user/payOk"

p.Subject = "项目名称"

p.OutTradeNo = "自定义订单号"

p.TotalAmount = "支付价格"

p.ProductCode = "FAST_INSTANT_TRADE_PAY"

 

var url, err = client.TradePagePay(p)

if err != nil {

fmt.Println(err)

}

 

var payURL = url.String()

 

this.Redirect(payURL,302)

 

支付成功调用处理方法:

func(this *OrderController)PayOK(){

trade_no :=this.GetString("trade_no")
if trade_no != ""{
//获取相应的订单,更改订单信息
}
this.Redirect("/goods/userCenterOrder",302)
}

 

 

 

 

转载于:https://www.cnblogs.com/wzshare/p/10264177.html

你可能感兴趣的文章
兼容多个版本程序集的web.config配置
查看>>
java finally块执行时机分析
查看>>
day6 字符串
查看>>
JMeter5.0 边界提取器使用
查看>>
Windows Azure 上的 Symfony,适用于 PHP 开发者的强大组合
查看>>
堆和栈的区别 (转贴)
查看>>
通过包名获取该包下的所有类
查看>>
【JavaScript学习笔记】画图
查看>>
反向代理与直接访问Ping性能分析
查看>>
Linux写时拷贝技术(copy-on-write)
查看>>
opencv视频读取问题
查看>>
java Iterator Fail-fast机制
查看>>
Java堆外内存之五:堆外内存管理类ByteBuffer
查看>>
HTML5 input placeholder 颜色修改
查看>>
TJ/T808 终端通讯协议设计与实现(码农本色)
查看>>
分布式搜索引擎Elasticsearch的查询与过滤
查看>>
SolidEdge 工程图中如何给零件添加纹理或贴图
查看>>
【Java面试题】14 super.getClass()方法调用
查看>>
六种流行的语言---C、C++、python、Java、php、C#比较[转]
查看>>
AP INVOICES IMPORT API(NOT request)
查看>>