步骤一:获取模板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