一、请求地址
POST https://api.weixin.qq.com/cgi-bin/message/wxopen/template/send?access_token=ACCESS_TOKEN
二、参数获取
2.1 access_token 获取
请求地址GET https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPSECRET
需要注意的是获取到的access_token的有效期目前为 2 个小时,需定时刷新,重复获取将导致上次获取的 access_token 失效;
建议获取到了保存到缓存数据库里面设置过期时间,再次使用时access_token不存在在重新获取
2.2 template_id所需下发的模板消息的id
需要用户去微信公众平台申请添加新模板,审核通过后可使用
复制审核通过的模板ID
2.3 form_id 表单提交场景下,为 submit 事件带上的 formId;支付场景下,为本次支付的 prepay_id
表单提交场景下获取fromId 需要在form标签设置 report-submit='true' button标签设置form-type="submit"
```
<form bindsubmit="bindsubmit" report-submit='true'
<button form-type="submit" type="default" size="mini">提交</button>
</form>
bindsubmit: function (e) {
console.log(e.detail.formId);
}
```
支付场景下获取prepay_id需要调用微信的统一下单接口成功后返回
接口链接 https://api.mch.weixin.qq.com/pay/unifiedorder 具体API文档 https://pay.weixin.qq.com/wiki/doc/api/wxa/wxa_api.php?chapter=9_1
提交表单:当用户在小程序内发生过提交表单行为且该表单声明为要发模板消息的,开发者需要向用户提供服务时,可允许开发者向用户在7天内推送有限条数的模板消息(1次提交表单可下发1条,多次提交下发条数独立,相互不影响),发送对象的OpenId必须是操作表单对象用户的OpenId,下发操作对象以外对象的OpenID会提示 41028 -errmsg:invalid form id hint
支付:当用户在小程序内完成过支付行为,可允许开发者向用户在7天内推送有限条数的模板消息(1次支付可下发3条,多次支付下发条数独立,互相不影响),发送对象的OpenId必须是支付对象的OpenId,下发支付对象以外的OpenID会提示 41028 -errmsg:invalid form id hint