步骤一:获取模板id
有两个方法可以获取模版id
- 通过模版消息管理接口获取模版id
- 在微信公众平台手动配置获取模版id
步骤二:页面的 <form/> 组件,属性report-submit为true时,可以声明为需发模板消息,此时点击按钮提交表单可以获取formid,用于发送模板消息。或者当用户完成支付行为,可以获取prepay_id用于发送模板消息。
步骤三:调用接口下发模板消息
今天重要的说第三步怎么实现,前面的步骤比较简单就略过。
----------------------------------------------------------------------------------------------------
1. 获取 access_token
https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=appid&secret=appsecret
后面会在发送模板消息的时候会用到access_token
2. 发送模板消息
接口地址:(access_token 需换成上文获取到的 access_token)
https://api.weixin.qq.com/cgi-bin/message/wxopen/template/send?access_token=access_token
注意说明:由于微信现在不让开发者直接在前端使用 接口获取数据,所以下面的操作都必须由服务器后台来完成。
官方的post参数:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
|
{
"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"
}
var l = "https://api.weixin.qq.com/cgi-bin/message/wxopen/template/send?access_token=" + access_token;
var tempdata = new
{
touser = openid,
template_id = "verash9plzmyw9-pqjiggkbca3hou30qfvtaxd******" , //这个是1、申请的模板消息id,
page = "pages/index/index" ,
form_id = formid,
data = new
{
keyword1 = new
{
value = title,
color = "#666666"
},
keyword2 = new
{
value = datetime.now.tostring( "yyyy-mm-dd hh:mm:ss" ),
color = "#9b9b9b"
},
keyword3 = new
{
value = remarks,
color = "#9b9b9b"
}
},
color = "#666666"
};
x.component.tools.webclient wc = new x.component.tools.webclient();
var result = tempdata.tojson(); //newtonsoft.json.jsonconvert.serializeobject(tempdata);
wc.encoding = system.text.encoding.utf8;
var obj = wc.post(l, result); //得到返回的结果
|
注意 page路径
最后返回的结果:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
{
"data" : {
"success" : true
},
"statuscode" : 200,
"header" : {
"server" : "microsoft-iis/7.5" ,
"access-control-allow-origin" : "https://pubchem.ncbi.nlm.nih.gov" ,
"cache-control" : "private" ,
"x-ua-compatible" : "chrome=1" ,
"date" : "thu, 28 sep 2017 04:46:34 gmt" ,
"x-aspnetmvc-version" : "4.0" ,
"content-type" : "application/json; charset=utf-8" ,
"x-powered-by" : "asp.net" ,
"x-aspnet-version" : "4.0.30319" ,
"content-length" : "16"
},
"errmsg" : "request:ok"
}
|
效果截图:
总结
以上所述是小编给大家介绍的c#开发之微信小程序发送模板消息功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对服务器之家网站的支持!
原文链接:http://www.cnblogs.com/vanteking/p/7606222.html