步驟一:獲取模板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