上篇已經成功回應了關注事件,也實現了文字訊息的發送,這篇開始圖文訊息處理, 微信中最常用的訊息類型就是圖文訊息了,因為它圖文並茂,最能表達訊息。 圖文訊息在微信中的介面定義如下:
<xml> <tousername></tousername> <fromusername></fromusername> <createtime>12345678</createtime> <msgtype></msgtype> <articlecount>2</articlecount> <articles> <item> <title></title> <description></description> <picurl></picurl> <url></url> </item> <item> <title></title> <description></description> <picurl></picurl> <url></url> </item> </articles> </xml>
加上文字定義:
#很多人第一次看這篇文件時會覺得看不懂, 因為它這寫的實在是不太直觀, 多看幾眼就明白了, 開發者、用戶、時間等等跟文字訊息及其他訊息都一樣, 唯一不一樣的是圖文訊息中articles節點又是個多筆記錄的節點,它跟其他節點同級,具體文章相當於子級, 這個看了之前文章中定義圖文訊息模型就很直觀了,我把文章單獨作為一個list當作圖文訊息模型中的一個屬性來用。
我們這裡模擬幾個資料
SNews mN = new SNews(); mN.FromUserName = ReadXml.ReadModel("ToUserName", model); mN.ToUserName = ReadXml.ReadModel("FromUserName", model); mN.CreateTime = long.Parse(ReadXml.ReadModel("CreateTime", model)); mN.MsgType = "news"; // 以下为文章内容, 实际使用时,此处应该是一个跟数据库交互的方法,查询出文章 //文章条数, 文章内容等 都应该由数据库查询出来的数据决定 这里测试,就模拟几条 mN.ArticleCount =5; List<articlesmodel> listNews = new List<articlesmodel>(); for (int i = 0; i <p><br></p> <p>demo是輸入?或?或幫助 回覆文字選單, 輸入其他字元回覆圖文</p> <p>效果:</p> <p><img src="https://img.php.cn//upload/image/383/395/162/1487830560310636.jpg" title="asp.net開發微信公眾平台(5)微信圖文訊息" alt="asp.net開發微信公眾平台(5)微信圖文訊息" style="max-width:90%" style="max-width:90%"></p> <p><img src="https://img.php.cn//upload/image/499/721/917/1487830571507114.jpg" title="asp.net開發微信公眾平台(5)微信圖文訊息" alt="asp.net開發微信公眾平台(5)微信圖文訊息" style="max-width:90%" style="max-width:90%"></p> <p>圖文訊息超過1篇時預設第一篇是大圖顯示,且每一篇都只顯示標題, 當只有一條時會顯示簡介,如圖:</p> <p><img src="https://img.php.cn//upload/image/853/782/961/1487830588572998.jpg" title="asp.net開發微信公眾平台(5)微信圖文訊息" alt="asp.net開發微信公眾平台(5)微信圖文訊息" style="max-width:90%" style="max-width:90%"></p> <p></p> <p> 無論有多少條文章,每篇文章點擊都會打開所賦值的文章鏈接, 此時就相當於打開了一個瀏覽器訪問你的web頁面,這個頁面你可以自行設計成任何樣子, 由於手機大小不一,這個頁面設計時最好考慮下螢幕適配,做成響應式佈局吧</p> <p> </p> <p># 好了,圖文訊息就是這麼多,至此為止,微信所有的基礎內容基本上都完成了, 在第7篇我會放出完整的demo版源碼,保證拿回去扔到伺服器上指定個域名,然後到微信官方填寫一下,立刻就能看到效果...... </p> <p><br></p> <p>更多asp.net開發微信公眾平台(5)微信圖文訊息相關文章請關注PHP中文網! </p> <p><br><br></p>#</articlesmodel></articlesmodel>