go语言支付宝支付代码

在这里插入图片描述

github.com/smartwalle/alipay

func (this*UserController)HandleUserPay()  {

	var appId="2016091800541813"
	var aliPublicKey = "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAzBr/2fOq6vbfAKiIlR8zyAOV2uOMbyYouV/ScQjuNNAVj+D6RZEdJWjz8+ENhpoUOhUa9CuXwZnBIwVD3ET0BLB0AtmL9SmzhSgTDy7WL/LLc+ZDfMmQZYojpVioie+ZUqi1R4BCYh81XZW/xKTFu05awxDdYh6z2K3+whSJaW7Ow1NV9J8UbZiglJEA/nwnLS5W8XAdY3srGC1f1mtlJV6VkfD8d+B5f9t8r+LD4p1EFVDD9i5V1XyCyX7Fiig8ZFyap9z+ZuEnI1xmkiKBZamnvl/QCU2hA+b6xiy84hSyk8zk/a55pGAKUwOuwStSdaBkX4btD14BWoYYwNaMlQIDAQAB" // 可选,支付宝提供给我们用于签名验证的公钥,通过支付宝管理后台获取
	var privateKey = "MIIEpQIBAAKCAQEA4OH65bculJnLB5Ay9tYbx5bBGpelBVi/lMjzU5C5IcZeXS6f"+
		"ZMyTduaOIY209SXQCP9D9CrFaVA3+AgYnsivCaMDnBLZt/x9VT+pZJXr+g0kvJb3"+
		"tTwBlTj5JhUY7qr6wX8nJPBBZ+r8+IVCJBTu7AEcYFlTqZunBgsazLzBCZ6zbhNM"+
		"qgjB3/6v9Ua0AoxC/Ki4ko37GacOsqridsfZjBF4ymGSxehjuLRxSsAocXyoI/kd"+
		"ZY3uvNMgSnLWCDnM95WjQTlbd6UswyKG6zQPWuA0H0MUvVXX7j++o3uSurqTVjD7"+
		"kriVF7u5EGp9Zzv5emRhz3uoBO2Gy5nT26h2QQIDAQABAoIBAQCJeZxn0hQnw9za"+
		"QszlGP7ihMaH+yxmmFqGGlKmQ1Lp0trdHCNU+7sqdMduu7JkKzmCRorEOWF1gBS3"+
		"DDwA1a4rtfv+7Ycrcq8r7j8fvocD1gUfRSspIAXXs3ycS0lynhOtNo43hqh1XrJH"+
		"Oy+z3xgwLn2qaPE8Pmtcxm0bvEhGGBk7GOwz4Jj6X96Iv6CgtUa72dFj52YWXfYn"+
		"4Dni1GM1OQthO+j91peZKBUyUGOenyyGbRM1sdIsyRl4srAYgEP5I2WFPzosoo8M"+
		"B1IxB1cyZKOdncAwqqoKsee76/sLlB7PXU6UKYh//K9nEG9LLtdfVWcn6Bw+z6fO"+
		"hEnl9doBAoGBAPFIcoeZ59OB+bJ5FGNA3J9rhisjGrmEzv3v+XuT6BcaXl0fIR+w"+
		"FK9QaELvr7A/01pQIeqxjHiU6PTQkI7bPZLiSs4SYp7bW9RlnmCp8atlx1oJ5M7m"+
		"nz3wARczyAjrAeU9Rw1W0mC/dHOxQkgiQKtk6c1igeIbtFPnwHf9+liTAoGBAO6Z"+
		"crd8at4+/D4/etfpNr94Y+Yw7XeTl189pIJEHKdkbs9v6HX84kovdMeKq7qNP1Db"+
		"2x+rYr2GnagxbD2yz3hI+hMVP9bpZMWqQUxV89IA+60VxLpLzo8FBKukVE/LiPi1"+
		"J+Yl3deoZgxMwWt7lnvLlR6qoQFeT3GsxMFsZ15bAoGBAMfdWjmnLFiQrtS+5Tt+"+
		"TAKmX8I11vpb39aLxR4vm64fgpEiqx6Dje7W7TadMuwNQrbp795n6lMsDnhUl5ou"+
		"U6frWUmwAw9R55ReBL5Pp8dxjJux3F3ivX/h4hVlKEry2GQayVNsWuIXVZBMAfqc"+
		"nPMcqWsfMTWp+0sRiuYadRiPAoGBAL5tB4p7qQtBd63ymgdSIRjFa+2e5ReHWstv"+
		"dillVP0gAfRa20u3jZ8pqulKum5EJuFQ5tyquz6J/q/q6fmACWd1zuiGEBJk6cF8"+
		"dWsIOnVDxZnJgt4wfGXW2nhmycd5qRLd+j8Lv7dLtk5gwAoZc+vPem8kPSXLcFpI"+
		"SiwZaZJ7AoGAZ3BpHpAdQhWHSej1B2AQpv+3YD3RsMAkTJtUfX1meVo6OSrUTvlS"+
		"7n65sGfAcSIhY9PpRSricwFUmNJbM1qesgf7WatsAYy2VDWXIxQpcU0DQs5VvcFu"+
		"tWN1Hgl9g4x4taZMlBWO7Km2irmwgVaZZorCm+K+7innn/jG4JdC2BQ=" // 必须,上一步中使用 RSA签名验签工具 生成的私钥
	var client = alipay.New(appId, aliPublicKey, privateKey, false)

	oid := this.GetString("oid")
	totalprice := this.GetString("totalprice")

	var p = alipay.AliPayTradePagePay{}
	p.NotifyURL = "http://xxx"
	p.ReturnURL = "http://192.168.33.134:8080/userhandle/payok"
	p.Subject = "yanxu_wilson"
	p.OutTradeNo = oid
	p.TotalAmount = totalprice
	p.ProductCode = "FAST_INSTANT_TRADE_PAY"

	var url, err = client.TradePagePay(p)
	if err != nil {
		fmt.Println(err)
	}

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

}

调用支付宝的接口

func (this*UserController)HandlePayOK()  {
    //http://192.168.33.134:8080/userhandle/payok?
    //// charset=utf-8&out_trade_no=88888&method=alipay.trade.page.pay.return&total_amount=10.00
    //// &sign=usjx097MeG2qKbiGy%2F50BDSaQR%2F0%2FRagEKxiZRH8LymHCzkx3fp0%2FEa5irty5xpdhPYQsV8XH52
    //// GcJe7XWPWdapkNlZ9Lkk0%2BthQuPYIPCjDPKgIg1TaI2M0Cq3TR4pQxqfodn61%2ByTHKzWXaH6%2BOqcI5Uh5QNh
    //// Jq39vVTOMpDambWBfrn%2BFOfn3Y5TDTWOIyj4LTtGLqvRj8lHyynu8VhbPT7tSAbEOOhNYqwRGtq9FNh2WgY%2BMyHn
    //// briddwevrCH3hfygaB3NdTZAFkfsk8GOJBbNdi%2BVKZdwlf%2BwIaNUH8Tm8d5DDDRnnECAMy%2FCBLw9hyT7y9c6x29XS4
    //// acGnw%3D%3D&trade_no=2018102422001427710500390977&auth_app_id=2016091800541813&version=1.0&
    //// app_id=2016091800541813&sign_type=RSA2&seller_id=2088102176219913&timestamp=2018-10-24+21%3A23%3A18
    
    	orderId := this.GetString("out_trade_no")
    	beego.Info("orderId::::",orderId)
    	if orderId=="" {
    		beego.Info("zhifu shibai")
    		this.Redirect("/userhandle/userOrder",302)
    		return
    	}
    	beego.Info("orderId:->",orderId)
    	o := orm.NewOrm()
    	id,err:=o.QueryTable("OrderInfo").Filter("OrderId",orderId).Update(orm.Params{"Orderstatus":2})
    	beego.Info(id,err)
    	this.Redirect("/userhandle/userOrder",302)
    
    }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值