支付宝支付功能——基于go语言实现

文章介绍了如何在Go语言中集成支付宝支付功能,包括使用沙箱环境进行测试,设置公钥私钥和回调URL。通过提供的GitHub项目smartwalle/alipay,展示了生成订单的代码示例,以及设置支付回调和页面跳转的配置步骤。
摘要由CSDN通过智能技术生成


一、相关链接

因为只有注册公司以后才能申请支付功能,所以支付宝给了一个沙箱环境供我们测试

1. 文档

https://opendocs.alipay.com/common/02kkv7

2. 项目地址

https://github.com/smartwalle/alipay

3. 开发步骤

  1. 设置公钥和私钥
  2. 设置回调

二、设置公钥私钥 回调url

1. 设置公私钥

https://opendocs.alipay.com/common/02kipl

生成的公私钥用来给支付宝解密 生成公钥给我们解密,
非对称加解密流程:
在这里插入图片描述
即使自己的私钥泄露被伪造了A请求也不会信任这个请求的,因为支付宝的私钥和自己的私钥不匹配

直接填写即可 - 支付宝的安全dddd
在这里插入图片描述

2. go生成订单

github项目:https://github.com/smartwalle/alipay

这个项目也支持其他支付方式

go代码演示:

package main

import (
	"fmt"
	"github.com/smartwalle/alipay/v3"
	"net/url"
)

func main() {
	appID := ""//你的appID
	privateKey := ""//你的私钥
	aliPhublicKey := ""//支付宝的公钥
	var client, err = alipay.New(appID, privateKey, false)
	if err != nil {
		panic(err)
	}
	err = client.LoadAliPayPublicKey(aliPhublicKey)
	if err != nil {
		panic(err)
	}
	//var p = alipay.TradeWapPay{}
	var p=alipay.TradePagePay{}
	p.NotifyURL = "https://www.baidu.com"//支付宝回调
	p.ReturnURL = "https://www.baidu.com"//支付后调转页面
	p.Subject = "Jzin-订单支付" //标题
	p.OutTradeNo = "jzin"   //传递一个唯一单号
	p.TotalAmount = "10.00"//金额
	//p.ProductCode = "QUICK_WAP_WAY"
	p.ProductCode = "FAST_INSTANT_TRADE_PAY"//网页支付
	var url2 *url.URL
	url2, err = client.TradePagePay(p)
	if err != nil {
		fmt.Println(err)
	}

	var payURL = url2.String()
	fmt.Println(payURL)
	// 这个 payURL 即是用于支付的 URL,可将输出的内容复制,到浏览器中访问该 URL 即可打开支付页面。
}

运行后直接访问 可以用沙箱给的账号进行测试:
在这里插入图片描述
在这里插入图片描述

  • 5
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Jzin

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值