微信公眾平臺(tái)開發(fā)之發(fā)送圖文消息.Net代碼解析
之前我們講過讓微信發(fā)送給我們普通的文本信息,下面我們來看看如何發(fā)送圖文信息,需要注意的是這里說的是,讓微信發(fā)給我們,而不是我們拍個(gè)圖片發(fā)給微信處理,我們上傳圖片在以后的章節(jié)介紹.下面是發(fā)送圖文消息的函數(shù),涉及title(標(biāo)題),description(摘要),picurl(圖片),鏈接(url)幾個(gè)關(guān)鍵的參數(shù):
protected string sendPicTextMessage(Msg _mode,string title,string description,string picurl,string url) { string res = string.Format(@"<xml> <ToUserName><![CDATA[{0}]]></ToUserName> <FromUserName><![CDATA[{1}]]></FromUserName> <CreateTime>{2}</CreateTime> <MsgType><![CDATA[news]]></MsgType> <ArticleCount>1</ArticleCount> <Articles> <item> <Title><![CDATA[{3}]]></Title> <Description><![CDATA[{4}]]></Description> <PicUrl><![CDATA[{5}]]></PicUrl> <Url><![CDATA[{6}]]></Url> </item> </Articles> </xml> ", _mode.FromUserName, _mode.ToUserName, DateTime.Now,title, description, picurl, url); return res; }
直接在調(diào)用函數(shù)即可:
protected void Page_Load(object sender, EventArgs e) { MyMenu(); wxmessage wx = GetWxMessage(); string res = ""; if (!string.IsNullOrEmpty(wx.EventName) && wx.EventName.Trim() == "subscribe") { string content = ""; content = "/:rose歡迎北京永杰友信科技有限公司/:rose\n直接回復(fù)“你好”"; res = sendTextMessage(wx, content); } else if (!string.IsNullOrEmpty(wx.EventName) && wx.EventName.Trim() == "CLICK") { if(wx.EventKey=="Hello") res = sendTextMessage(wx, "你好,歡迎使用北京永杰友信科技有限公司公共微信平臺(tái)!"); if(wx.EventKey=="P1") res = sendTextMessage(wx, "你好,點(diǎn)擊了產(chǎn)品1"); if(wx.EventKey=="P2") res = sendTextMessage(wx, "你好,點(diǎn)擊了產(chǎn)品2"); } else { if (wx.MsgType == "text" && wx.Content == "你好") { res = sendTextMessage(wx, "你好,歡迎使用北京永杰友信科技有限公司公共微信平臺(tái)!"); } if (wx.MsgType == "text" && wx.Content == "圖文") { res = sendPicTextMessage(wx,"這里是一個(gè)標(biāo)題","這里是摘要","http://mp.weixin.qq.com/wiki/skins/common/images/weixin_wiki_logo.png","http://www.4ugood.net"); } else if (wx.MsgType == "voice") { res = sendTextMessage(wx, wx.Recognition); } else { res = sendTextMessage(wx, "你好,未能識(shí)別消息!"); } } Response.Write(res); } private wxmessage GetWxMessage() { wxmessage wx = new wxmessage(); StreamReader str = new StreamReader(Request.InputStream, System.Text.Encoding.UTF8); XmlDocument xml = new XmlDocument(); xml.Load(str); wx.ToUserName = xml.SelectSingleNode("xml").SelectSingleNode("ToUserName").InnerText; wx.FromUserName = xml.SelectSingleNode("xml").SelectSingleNode("FromUserName").InnerText; wx.MsgType = xml.SelectSingleNode("xml").SelectSingleNode("MsgType").InnerText; if (wx.MsgType.Trim() == "text") { wx.Content = xml.SelectSingleNode("xml").SelectSingleNode("Content").InnerText; } if (wx.MsgType.Trim() == "event") { wx.EventName = xml.SelectSingleNode("xml").SelectSingleNode("Event").InnerText; wx.EventKey = xml.SelectSingleNode("xml").SelectSingleNode("EventKey").InnerText; } if (wx.MsgType.Trim() == "voice") { wx.Recognition = xml.SelectSingleNode("xml").SelectSingleNode("Recognition").InnerText; } return wx; }
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- 微信公眾平臺(tái)開發(fā)之地理位置.Net代碼解析
- 微信公眾平臺(tái)開發(fā)之自定義菜單.Net代碼解析
- .Net微信開發(fā)之如何解決access_token過期問題
- 微信公眾平臺(tái)開發(fā)之發(fā)送文本消息.Net代碼解析
- .net實(shí)現(xiàn)微信公眾賬號(hào)接口開發(fā)實(shí)例代碼
- .net開發(fā)微信公眾平臺(tái)實(shí)例教程
- asp.net微信開發(fā)(永久素材管理)
- asp.net開發(fā)微信公眾平臺(tái)之獲取用戶消息并處理
- asp.net微信開發(fā)(開發(fā)者接入)
- .NET微信公眾號(hào) 用戶分組管理
相關(guān)文章
ASP.NET連接MySql數(shù)據(jù)庫的2個(gè)方法及示例
這篇文章主要介紹了ASP.NET連接MySql數(shù)據(jù)庫的2個(gè)方法及示例,使用的是MySQL官方組件和ODBC.NET,需要的朋友可以參考下2014-03-03ASP.NET Core利用Jaeger實(shí)現(xiàn)分布式追蹤詳解
這篇文章主要給大家介紹了關(guān)于ASP.NET Core利用Jaeger實(shí)現(xiàn)分布式追蹤的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用ASP.NET Core具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧2019-04-04.NET Core 3.0之創(chuàng)建基于Consul的Configuration擴(kuò)展組件
在本文里小編給大家分享了關(guān)于.NET Core 3.0之創(chuàng)建基于Consul的Configuration擴(kuò)展組件相關(guān)知識(shí)點(diǎn),需要的朋友們學(xué)習(xí)下。2019-05-05asp.net+sqlserver實(shí)現(xiàn)的簡(jiǎn)單高效的權(quán)限設(shè)計(jì)示例
大部分系統(tǒng)都有權(quán)限系統(tǒng)。一般來說,它能管控人員對(duì)某個(gè)否頁面的訪問;對(duì)某些字段、控件可見或者不可見。對(duì)gridview中的數(shù)據(jù)是否可刪除、可添加、可新增等等。2010-04-04ASP.NET Gridview與checkbox全選、全不選實(shí)現(xiàn)代碼
ASP.NET Gridview checkbox全選與全不選實(shí)現(xiàn)代碼,其實(shí)原理就是利用js來實(shí)現(xiàn)的,但需要簡(jiǎn)單的設(shè)置下回傳。2010-04-04Asp.net 彈出對(duì)話框基類(輸出alet警告框)
asp.net輸出alert警告框2008-11-11