微信小程序支付券发放之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)
}
}
参数详情可看文章
因为很多简单的问题看了官方文档就能明白,所以下面就讲述几个常见问题:
官方实例中的点击触发事件的几种情况:
- bindcustomevent:旧版接口原生小程序内的写法
- @customevent/bind:customevent:旧版接口uniapp写法
- @sendcoupon/bind:sendcoupon:新接口原生小程序内的写法
- bindsendcoupon:新接口uniapp写法
签名构成意见:
- 签名千万千万不要写在客户端!
- 并且每次签名都是唯一,绝对不要出现重复的情况!
- 这是我个人在写支付券时的签名签名代码摘要:
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