微信公众平台开发之发送图文消息.Net代码解析_实用技巧

之前我们讲过让微信发送给我们普通的文本信息,下面我们来看看如何发送图文信息,需要注意的是这里说的是,让微信发给我们,而不是我们拍个图片发给微信处理,我们上传图片在以后的章节介绍.下面是发送图文消息的函数,涉及title(标题),description(摘要),picurl(图片),链接(url)几个关键的参数: 

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;

   }

直接在调用函数即可: 

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直接回复“你好”";
       res = sendTextMessage(wx, content);
     }
     else if (!string.IsNullOrEmpty(wx.EventName) && wx.EventName.Trim() == "CLICK")
     {
       if(wx.EventKey=="Hello")
         res = sendTextMessage(wx, "你好,欢迎使用北京永杰友信科技有限公司公共微信平台!");
       if(wx.EventKey=="P1")
         res = sendTextMessage(wx, "你好,点击了产品1");
       if(wx.EventKey=="P2")
         res = sendTextMessage(wx, "你好,点击了产品2");
     }
     else
     {
       if (wx.MsgType == "text" && wx.Content == "你好")
       {
         res = sendTextMessage(wx, "你好,欢迎使用北京永杰友信科技有限公司公共微信平台!");
       }
       if (wx.MsgType == "text" && wx.Content == "图文")
       {
         res = sendPicTextMessage(wx,"这里是一个标题","这里是摘要","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, "你好,未能识别消息!");
       }
     }

     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;
   }

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索微信
, .net
发送图文消息
iphone实用功能图文、倒车入库实用技巧、excel实用小技巧、实用插花技巧、vim实用技巧,以便于您获取更多的相关知识。

时间: 2024-09-17 04:25:33

微信公众平台开发之发送图文消息.Net代码解析_实用技巧的相关文章

微信公众平台开发之发送文本消息.Net代码解析_实用技巧

.Net实现微信公共服务平台开发中的发送文本消息功能,具体内容如下 首先建立一个微信消息类.  class wxmessage { public string FromUserName { get; set; } public string ToUserName { get; set; } public string MsgType { get; set; } public string EventName { get; set; } public string Content { get; s

微信公众平台开发之认证&quot;成为开发者&quot;.Net代码解析_实用技巧

.Net 实现微信公共服务平台开发的认证,认证成为开发者,具体内容如下 这些代码也就开始认证的时候用一次,以后就不用了: const string Token = "XXXXX";//你的token protected void Page_Load(object sender, EventArgs e) { string postStr = ""; if (Request.HttpMethod.ToLower() == "post") { Sys

微信公众平台开发教程(八)Session处理问题_实用技巧

在微信窗口,输入的信息有限,我们需要将一些信息分多次请求. 比如:在进行用户绑定时,我们需要输入用户的相关信息,比如:用户名.密码,或者姓名.电话号码,服务端验证通过,即可将系统用户与微信用户绑定. 然后,此微信账户就有一定的功能权限了,可以查积分,消费记录等.服务号:招商银行信用卡,就有很多功能. 微信客户端无法缓存信息,而且输入信息有限,需要进行多次请求,在服务端保存当前会话状态.这就需要Session. 本文以用户认证,绑定账号为例,来说明具体处理. 一.创建通用的Session处理机制.

微信公众平台开发入门教程(图文详解)_Android

在这篇入门教程中,我们假定你已经有了PHP语言程序.MySQL数据库.计算机网络通讯及XML语言基础.如果你还没有,那么请先学习相关知识. 我们将使用微信公众账号方倍工作室(账号:pondbaystudio,二维码在最底部)作为讲解的例子. 这篇入门教程将引导你完成如下任务: 创建百度云平台应用启用微信公众平台开发模式获取订阅.文字.图片.语音.视频消息回复文本.图文及音乐消息程序开发  创建百度云应用 申请账号 登录http://developer.baidu.com/bae ,使用邮箱或者手

微信公众平台开发入门教程(图文详解)

在这篇入门教程中,我们假定你已经有了PHP语言程序.MySQL数据库.计算机网络通讯及XML语言基础.如果你还没有,那么请先学习相关知识. 我们将使用微信公众账号方倍工作室(账号:pondbaystudio,二维码在最底部)作为讲解的例子. 这篇入门教程将引导你完成如下任务: 创建百度云平台应用启用微信公众平台开发模式获取订阅.文字.图片.语音.视频消息回复文本.图文及音乐消息程序开发 创建百度云应用 申请账号 登录http://developer.baidu.com/bae ,使用邮箱或者手机

微信公众平台改版 终于支持图文消息链接了

微信公众平台发布更新了,终于允许在图文消息中加入跳转链接,但仅针对开通了微信支付的公众号,开通微信支付应该不算难,大伙赶紧去开通吧.本次微信公众平台改版升级还新增开发者中心.界面扁平化.改善用户体验等,以下是微信团队的公告: 微信公众平台改版说明 1. 允许在图文消息中加入跳转链接 对开通了微信支付的公众号,允许在图文消息中加入跳转链接 2. 将服务中心升级为功能插件 每个公众号都可以在添加功能插件页面,看到该帐号能申请的所有功能. 3. 商户功能改名为微信支付 为便于企业或商家认知及申请微信支

微信公众平台开发之处理图片.Net代码解析_实用技巧

举个例子,有人对着我们的公共微信号拍个照片发送过来,然后我们处理这个照片,比如进行ocr识别字(随后就会降到这个例子),或者人脸识别,或者拍照取证等,这些功能都是相当有用的.那么我们现在就要分析一下这个过程.微信平台肯定不能帮助我们OCR或者人脸识别等功能,要做这些功能首先到得到图片!用户拍摄的照片首先被上传到了wenxin的服务器,然后就有了一个mediaID,我们用这个mediaID可以下载到我们自己的服务器上然后处理,把结果给微信平台,由微信平台最终反馈给用户(关注者).微信的开发文档已经

微信公众平台开发教程(五)详解自定义菜单_javascript技巧

一.概述: 如果只有输入框,可能太简单,感觉像命令行.自定义菜单,给我们提供了很大的灵活性,更符合用户的操作习惯.在一个小小的微信对话页面,可以实现更多的功能.菜单直观明了,不仅能提供事件响应,还支持URL跳转,如果需要的功能比较复杂,我们大可以使用URL跳转,跳转至我们的网页即可. 注意:自定义菜单,只有服务号才有此功能 接着我们详细介绍,如何实现自定义菜单? 二.详细步骤: 1.首先获取access_token access_token是公众号的全局唯一票据,公众号调用各接口时都需使用acc

微信公众平台如何让多图文消息点不进去?

问题描述 在android上,将Article的setUrl设置为空就点不进去了,但在iphone上还是可以点进去.因为我想的就是让你点不进去,所以也没做点进去之后的处理,点进去就是一片白的.有没有什么办法让所有用户都点不进去呢? 解决方案 解决方案二:简单点的,比如屏蔽点击事件不行吗?解决方案三:怎么屏蔽点击事件,没听说过饿...我感觉多图文消息是微信自己弄得一个东西,点击事件应该不是我能控制的吧?解决方案四:这个是微信的硬伤,改不了吧