博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
2014-07-24 .NET实现微信公众号的消息回复与自定义菜单
阅读量:5245 次
发布时间:2019-06-14

本文共 1052 字,大约阅读时间需要 3 分钟。

  今天是在吾索实习的第12天。我们在这一天中,基本实现了微信公众号的消息回复与自定义菜单的创建。

  首先,是实现消息回复,其关键点如下:

  1. 读取POST来的数据流:Stream 数据流变量 = HttpContext.Current.Request.InputStream,并把其存入数组:数据流变量.Read(数组变量, 0, (int)数据流变量.Length) 后,再转换为字符串:string 字符串变量 = Encoding.UTF8.GetString(数组变量) 
  2. 在数据流所转换成的字符串中获取XML中所需的节点:根节点.SelectSingleNode("//所要节点的名字").InnerText
  3. 以XML文档格式向微信服务器返回消息,XML格式如下(以文本消息为例):
       "<xml>"+
           "<ToUserName><![CDATA[" + 用户账号 + "]]></ToUserName>"+
           "<FromUserName><![CDATA[" + 开发者公众号 + "]]></FromUserName>"+
           "<CreateTime>" + DateTime.Now.Ticks.ToString() + "</CreateTime>"+
           "<MsgType><![CDATA[text]]></MsgType>"+
           "<Content><![CDATA["+回复的内容+"]]></Content>"+
           "</xml>";

  另外,是创建自定义菜单,其关键点如下:

  1. 获取接口凭证access_token,发送请求给,即可获得access_token字符串。应注意的是,此字符串的有效期为两小时。
  2. 发送请求给。发送请求要应使用https协议。
  3. 以JSON格式编制具体自定义菜单的内容与功能。

  在今天对微信公众号的二次开发中,也遇到一些小插曲。就是编制好自定义菜单的代码后,在微信公众号的开发者中心中按提交修改服务器配置时,一直出现“系统发生错误,请稍后再试”。我们以为这次试验又要以失败告终的时候,却奇怪的发现服务号中的自定义菜单已经创建成功了。我们又回到网站看了一下,发现URL仍然没改变,但过了不久,在查看一遍,发现URL居然变了,这就令我们觉得相当奇怪了。真不知道,是代码编写有问题,还是微信那边的问题,希望有发生类似情况的各位能帮忙指点迷津,谢谢!

转载于:https://www.cnblogs.com/IamYoung/p/3866766.html

你可能感兴趣的文章
Docker——error pulling image configuration
查看>>
一条简单的 SQL 执行超过 1000ms,纳尼?
查看>>
Python函数(一)之杵臼之交
查看>>
关于将qt作为max插件ui库所遇到的困难
查看>>
如何设置映射网络驱动器的具体步骤和方法
查看>>
ASP.NET WebApi 基于OAuth2.0实现Token签名认证
查看>>
SendMail与Postfix的架构备忘
查看>>
paip.mysql 性能测试 报告 home right
查看>>
Atitit.跨平台预定义函数 魔术方法 魔术函数 钩子函数 api兼容性草案 v2 q216 java c# php js.docx...
查看>>
283. Move Zeroes把零放在最后面
查看>>
我的函数说明风格
查看>>
ssh 简介
查看>>
26.无向网邻接表类
查看>>
Visual Studio Code 打开.py代码报Linter pylint is not installed解决办法
查看>>
洛谷 p1352 没有上司的舞会 题解
查看>>
Python 数据类型
查看>>
Task 与 Activity
查看>>
Google Guava学习笔记——简介
查看>>
历时八年,HTML5 标准终于完工了
查看>>
17.树的子结构
查看>>