微信公众号接收消息和发送消息开发流程和注意事项

1.首先进行基本配置:

登录 微信公众平台 --》 开发 --》 基本配置,登录网址 https://mp.weixin.qq.com,如下图:

注意:在 http://www.xxx.com/wxmsg 页面输出 Response.Write(Request["echostr"]),提交之后方可通过验证,通过验证之后再修改该页面为正式的业务逻辑。如果没有输出 Request["echostr"],将会出现“token验证失败”错误。

 

2. 接收消息,消息格式是xml,消息接口说明 http://mp.weixin.qq.com/wiki/10/79502792eef98d6e0c6e1739da387346.html ,格式如:

<xml>
 <ToUserName><![CDATA[toUser]]></ToUserName>
 <FromUserName><![CDATA[fromUser]]></FromUserName> 
 <CreateTime>1348831860</CreateTime>
 <MsgType><![CDATA[text]]></MsgType>
 <Content><![CDATA[this is a test]]></Content>
 <MsgId>1234567890123456</MsgId>
 </xml>

注意:常规的Request是获取不到消息的,我在网上查到的方式如下:
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
public string PostInput(System.Web.HttpRequest request)
{
    try
    {
        return PostInput(request, Encoding.UTF8);
    }
    catch (Exception ex)
    { throw ex; }
}
 
public string PostInput(System.Web.HttpRequest request, Encoding encoding)
{
    StringBuilder builder = new StringBuilder();
    try
    {
        using (System.IO.Stream s = request.InputStream)
        {
            int count = 0;
            byte[] buffer = new byte[1024];
            while ((count = s.Read(buffer, 0, 1024)) > 0)
            {
                builder.Append(encoding.GetString(buffer, 0, count));
            }
            s.Flush();
            s.Close();
            s.Dispose();
        }
        return builder.ToString();
    }
    catch (Exception ex)
    { throw ex; }
}

 

3. 返回消息,格式也是xml,说明 http://mp.weixin.qq.com/wiki/14/89b871b5466b19b3efa4ada8e577d45e.html,直接 Response.Write() 输出即可。

 注意:输出之前先要Response.Clear(),否则可能由于缓存原因不输出内容.

 



 

posted @   鸽子飞扬  阅读(2499)  评论(1编辑  收藏  举报
编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· .NET周刊【3月第1期 2025-03-02】
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· [AI/GPT/综述] AI Agent的设计模式综述
点击右上角即可分享
微信分享提示