接口地址:(ACCESS_TOKEN 需换成上文获取到的 access_token)
    
   
https://api.weixin.qq.com/cgi-bin/message/wxopen/template/send?access_token=ACCESS_TOKEN
    
     HTTP请求方式:
    
   
POST
    
     POST参数说明:
    
   
| 参数 | 必填 | 说明 | 
|---|---|---|
| touser | 是 | 接收者(用户)的 openid | 
| template_id | 是 | 所需下发的模板消息的id | 
| page | 否 | 点击模板卡片后的跳转页面,仅限本小程序内的页面。支持带参数,(示例index?foo=bar)。该字段不填则模板无跳转。 | 
| form_id | 是 | 表单提交场景下,为 submit 事件带上的 formId ;支付场景下,为本次支付的 prepay_id | 
| data | 是 | 模板内容,不填则下发空模板 | 
| color | 否 | 模板内容字体的颜色,不填默认黑色 | 
| emphasis_keyword | 否 | 模板需要放大的关键词,不填则默认无放大 | 
    示例:
   
{
  "touser": "OPENID",  
  "template_id": "TEMPLATE_ID", 
  "page": "index",          
  "form_id": "FORMID",         
  "data": {
      "keyword1": {
          "value": "339208499", 
          "color": "#173177"
      }, 
      "keyword2": {
          "value": "2015年01月05日 12:30", 
          "color": "#173177"
      }, 
      "keyword3": {
          "value": "粤海喜来登酒店", 
          "color": "#173177"
      } , 
      "keyword4": {
          "value": "广州市天河区天河路208号", 
          "color": "#173177"
      } 
  },
  "emphasis_keyword": "keyword1.DATA" 
}
    
     返回码说明:
    
   
在调用模板消息接口后,会返回JSON数据包。
正常时的返回JSON数据包示例:
{
  "errcode": 0,
  "errmsg": "ok"
}
错误时会返回错误码信息,说明如下:
| 返回码 | 说明 | 
|---|---|
| 40037 | template_id不正确 | 
| 41028 | form_id不正确,或者过期 | 
| 41029 | form_id已被使用 | 
| 41030 | page不正确 | 
| 45009 | 接口调用超过限额(目前默认每个帐号日调用限额为100万) | 
<
form
bindsubmit
=
“formSubmit”
report-submit
=
‘true’
>
<
view
class
=
“btn-area”>
<
button
formType
=
“submit”>
Submit
</
button
>
</
view
>
</
form
>
     formSubmit:
     
function
     
(e) {
function
(e) {
     console.log(
     
‘form发生了submit事件,formId为:’
     
, e.detail)
‘form发生了submit事件,formId为:’
, e.detail)
var
that =
this
;
     console.log(
     
‘获取用户33openid===’
     
+ that.data.openid)
‘获取用户33openid===’
+ that.data.openid)
     console.log(
     
“access_token:”
     
+ that.data.access_token)
“access_token:”
+ that.data.access_token)
     wx.request({
    
     url:
     
‘https://www.*******.com/SendTemplate’
     
,
‘https://www.*******.com/SendTemplate’
,
     data: {
    
     touser: that.data.openid,
    
     access_token: that.data.access_token,
    
     formId: e.detail.formId
    
     },
    
     method:
     
‘post’
     
,
‘post’
,
// header: { ‘content-type’: ‘application/json’ // 默认值 },
     header: {
     
‘content-type’
     
:
     
‘application/x-www-form-urlencoded’
     
},
     
//使用这种方式后台才能实现获取到数据
     
    
‘content-type’
:
‘application/x-www-form-urlencoded’
},
//使用这种方式后台才能实现获取到数据
     success:
     
function
     
(res) {
function
(res) {
     console.log(
     
“发送模板:”
     
+ res.data)
“发送模板:”
+ res.data)
     }
    
     })
    
    遇到一个坑在开发工具上获取
    
     formId: “the formId is a mock one”。按常理应该是一串数字,原来是在模拟器下无法获取,需要在真机上才可以获取到
    
   
 
版权声明:本文为huningjun原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
