编程语言
首页 > 编程语言> > 微信小程序支付券发放之send-coupon

微信小程序支付券发放之send-coupon

作者:互联网

微信小程序支付券发放之send-coupon

使用组件前准备:

支付密钥/商品号/创建商品号/发放商品号

前提提要:

根据微信版本不同,参数之间有些许变化,下面将以v2以上版本和uniapp中写法为例为例

微信官方文档:https://pay.weixin.qq.com/wiki/doc/apiv3/apis/chapter9_3_1.shtml

使用

<send-coupon 
    @sendcoupon="getcoupon"	//用户点击领取时触发,组件自带回调函数,可将回调的参数输出
    :send_coupon_params="" //发券参数
    :sign=""	//签名
    :send_coupon_merchant="" //发券商户号 >
  <view>领取</view>
</send-coupon>

methods:{
	getcoupon(params){
		console.log('领取后返回的信息',params)
}
}

参数详情可看文章

因为很多简单的问题看了官方文档就能明白,所以下面就讲述几个常见问题:

官方实例中的点击触发事件的几种情况:

  1. bindcustomevent:旧版接口原生小程序内的写法
  2. @customevent/bind:customevent:旧版接口uniapp写法
  3. @sendcoupon/bind:sendcoupon:新接口原生小程序内的写法
  4. bindsendcoupon:新接口uniapp写法

签名构成意见:

  1. 签名千万千万不要写在客户端!
  2. 并且每次签名都是唯一,绝对不要出现重复的情况!
  3. 这是我个人在写支付券时的签名签名代码摘要:
		
    let stringText =`create_coupon_merchant0=${create_coupon_merchant}&out_request_no0=${out_request_no}&send_coupon_merchant=${send_coupon_merchant}&stock_id0=${stock_id}&key=${payKey}`;

    const hmac = crypto.createHmac("sha256", payKey);	//node的crypto模块,提供加密功能
		const sign = await hmac.update(stringText).digest("hex");		// 必须进行加密

标签:merchant,coupon,微信,send,签名,写法
来源: https://blog.csdn.net/zxd1059431281/article/details/119461247