Golang Gin接入支付宝H5网页支付
安装依赖
go get github.com/smartwalle/alipay/v3
发起账单接口
func FinishAliPayment(c *gin.Context) {appG := app.Gin{C: c}client, _ := alipay.New(setting.AppSetting.AliAppId, setting.AppSetting.AliPrivateKey, false)client.LoadAppPublicCertFromFile("conf/appCertPublicKey_2016091400512715.crt") // 加载应用公钥证书client.LoadAliPayRootCertFromFile("conf/alipayRootCert.crt") // 加载支付宝根证书client.LoadAliPayPublicCertFromFile("conf/alipayCertPublicKey_RSA2.crt") // 加载支付宝公钥证书var p = alipay.TradeWapPay{}p.NotifyURL = setting.AppSetting.Notifyp.ReturnURL = "http://test.yptech.tv"p.Subject = "*****"p.OutTradeNo = "46464613131314464"p.TotalAmount = "0.01"p.ProductCode = "QUICK_WAP_PAY"url, err := client.TradeWapPay(p)if err != nil {fmt.Println("pay client.TradeAppPay error:", err)return}//logging.Info(url)binary, _ := url.MarshalBinary()fmt.Println(string(binary))data := make(map[string]interface{})data["url"] = string(binary)appG.Response(http.StatusOK, 200, data)}
回调接口(接收通知接口)
func AliPayNotify(c *gin.Context) {client, _ := alipay.New(setting.AppSetting.AliAppId, setting.AppSetting.AliPrivateKey, false)client.LoadAppPublicCertFromFile("conf/appCertPublicKey_2016091400512715.crt") // 加载应用公钥证书client.LoadAliPayRootCertFromFile("conf/alipayRootCert.crt") // 加载支付宝根证书client.LoadAliPayPublicCertFromFile("conf/alipayCertPublicKey_RSA2.crt") // 加载支付宝公钥证书fmt.Println(c.Request.Body)var noti, _ = client.GetTradeNotification(c.Request)if noti != nil {fmt.Println("交易状态为:", noti.TradeStatus)}bs, _ := json.Marshal(noti)var out bytes.Bufferjson.Indent(&out, bs, "", "\t")fmt.Printf("data=%v\n", out.String())c.String(http.StatusOK, "%s", "success")
}
参考文献:
https://opendocs.alipay.com/open/203/105286https://opendocs.alipay.com/open/203/105286
https://github.com/smartwalle/alipayhttps://github.com/smartwalle/alipay
https://zhuanlan.zhihu.com/p/315591452https://zhuanlan.zhihu.com/p/315591452
Golang Gin接入支付宝H5网页支付相关推荐
- java 支付宝h5网页支付接口,移动端h5网页调用支付宝支付接口
领导第一次让我做h5支付宝支付的时候,去了支付宝开放平台,一顿上上下下左左右右,看完了长呼一口气.这个支付好像没我啥事儿啊!小伙伴儿们自行查看:https://opendocs.alipay.com/ ...
- 接入支付宝手机网页支付详解
主要就是要在后端构建一个html表单,以一个接口返回给前端,前端加载html后就会自动跳转到支付页面 <form id='alipaysubmit' name='alipaysubmit' ac ...
- 支付宝手机网页支付之golang版
本文章主要是通过golang实现了支付宝手机网页支付的简单封装,封装的基本都是请求的必传参数,如果需要其他参数,可以自己修改BizContent结构体来满足自己的需求. 封装的文件大体分为4个文件: ...
- 支付宝h5网页的支付
支付宝h5网页的支付 最近上线一个理财项目,手机网站进行调起支付宝App支付,做起来还是满顺手的,在此做个记录. 1.首先签约手机网站支付 进入商家中心,进行手机网站支付签约 这个是签约之后的状态,如 ...
- java支付宝电脑网页支付
java支付宝电脑网页支付 官网文档:https://opendocs.alipay.com/open/270/105902 电脑网站支付 1.先给应用申请电脑网页支付功能 2.根据接口文档 ,请求支 ...
- 支付宝手机网页支付java demo调试问题和解决办法
在使用支付宝手机网页支付的时候遇到一些问题跟大家分享一下. 1.生成签名的时候,使用Base64加密时报错:DerInputStream.getLength():lengthTag = 127, to ...
- php手机网站支付宝_php支付宝手机网页支付类实例
本文实例讲述了php支付宝手机网页支付类.分享给大家供大家参考.具体分析如下: 此处注意: ① 该类是用在Yii框架里面的,没有去掉一些框架的东西. ② 本类不能不做任何修改而使用. 1. PHP代码 ...
- TP5.1接入支付宝实现网页/APP支付完整请求回调流程(沙箱环境)
目前互联网项目如果涉及到第三方支付模块,那么支付宝/微信无非是最好的选择,此文先以支付宝为例讲解,想了解微信支付的可以看我之后的文章,当然支付也分很多种形式,比如扫码付.当面付.声波付.调用APP付, ...
- android微信支付回调方法,Android接入支付宝和微信支付的方法
前言 很多APP都需要支付功能,国内一般就是支付宝和微信了.目前这2种接入方式对于APP端来说都已经比较方便了,因为大部分的安全校验之类的逻辑都在服务端. APP端总结起来就是三步走: 接入支付的库 ...
最新文章
- SQL 中left join ,inner join,right join的区别
- T25健身视频全集+课表
- apache 配置rewrite模块,URL中隐藏index.php
- 铁幕(Iron Curtain)
- zabbix运行脚本监控ggsci报错
- WEB前端面试题汇总整理01
- Zookeeper的选举机制详解
- C语言二叉树字符统计,C语言实现二叉树-利用二叉树统计单词数目
- c语言实现万年历程序带节日,【C】万年历
- 图上上传页面设计_无线端页面设计“三大雷区”
- 从 MySQL 5.6 升级到 MySQL 8.0,Facebook 付出了什么代价?
- spring interceptor 拦截方法,判断用户是否存在
- 软件测试经典问题——NextDate函数
- PaaS适用于哪些场景?让案例说话
- Git使用教程:最详细、最傻瓜、最浅显、真正手把手教!
- html系统网页代码大全,html网页的代码大全
- java 以10为底的对数_获取Java中值的以10为底的对数
- 前端预言 未来前端的发展方向
- HDMI EDID概念梳理
- Java面试错题集1
热门文章
- 江苏省学业水平测试信息技术软件,江苏2019年普通高中信息技术学业水平测试工作顺利结束...
- Fragstats计算景观格局指数不出结果和分维数PAFRAC出现N/A的问题
- 你的独立思考能力正在被它吞噬掉
- 1.计算机网络 知识结构框架
- Elasticsearch聚合学习之二:区间聚合
- ERP标准物料编码规则指南
- java 级联删除_Mybatis 级联删除的实现
- OC block的回环引用
- bootstrap treeview 无限子级菜单展示与JSON处理 完整
- Pycharm:解决点击重运行(Rerun)没有反应