公众号第三方平台开发 教程四 代公众号处理消息和事件

公众号第三方平台开发 教程一 创建公众号第三方平台

公众号第三方平台开发 教程二 component_verify_ticket和accessToken的获取

公众号第三方平台开发 教程三 微信公众号授权第三方平台

公众号第三方平台开发 教程四 代公众号发起网页授权说明

公众号第三方平台开发 教程五 代公众号处理消息和事件

公众号第三方平台开发 教程六 代公众号使用JS SDK说明

另,感谢一下这个大虾的博客,这几篇东西都是在他的博文基础上完成的,他的博客里也有一些接口代码可以下载
微信开发系列教程

当粉丝给公众号信息的时候,服务器会给公众号消息与事件接收URL发送信息

下面直接上处理函数,处理完成之后直接在页面上输出加密后的消息即可。注意要把前台的html代码删除

 public void ResponseMessage()
    {
        WXBizMsgCrypt wxcpt = new WXBizMsgCrypt();

        string sReqData = GetPost();
        string respnseContent = "";
        string sResponse = "";  //加密之后的回复文本

        string sMsg = "";  //解析之后的明文
        int ret = 0;
        ret = wxcpt.DecryptMsg(sReqMsgSig, sReqTimeStamp, sReqNonce, sReqData, ref sMsg);

        LogTool.LogToDirDest(filePath, LogType.Debug, string.Format("{1} 接收到的信息:{0}", sReqData, pageUrl));

        LogTool.LogToDirDest(filePath, LogType.Debug, string.Format("{1} 解析后的消息:{0}", sMsg, pageUrl));

        var xDoc = XDocument.Parse(sMsg);

        List<XElement> q = (from c in xDoc.Elements() select c).ToList();

        var model = new
        {
            ToUserName = q.Elements("ToUserName").First().Value,
            FromUserName = q.Elements("FromUserName").First().Value,
            CreateTime = q.Elements("CreateTime").First().Value,

            MsgType = q.Elements("MsgType").First().Value,
            Content = ("" + q.Elements("Content").First().Value).Trim(),
            MsgId = q.Elements("MsgId").First().Value
        };

        if (false == string.IsNullOrEmpty(model.Content))
        {
            switch (model.Content.ToLower())
            {
                case "帮助":
                case "help":
                case "hello2bizuser": //被关注时自动回复
                    respnseContent = "使用帮助说明:\r\n------------------------\r\n"
                        + "常用命令:\r\n"
                        + "1、查看案例;\r\n"
                        + "2、联系方式;\r\n"
                        + "3、帮助或help;\r\n";
                    break;

                case "查看案例":
                    respnseContent = "查看案例:\r\n------------------------\r\n";
                    break;

                case "联系方式":
                    respnseContent = "联系方式:\r\n------------------------\r\n";
                    break;

                default:
                    break;
            }

            var textTpl = "<xml>"
                              + "<ToUserName><![CDATA[{0}]]></ToUserName>"
                              + "<FromUserName><![CDATA[{1}]]></FromUserName>"
                              + "<CreateTime>{2}</CreateTime>"
                              + "<MsgType><![CDATA[{3}]]></MsgType>"
                              + "<Content><![CDATA[{4}]]></Content>"
                              + "<FuncFlag>0</FuncFlag>"
                              + "</xml>";

            int enRet = wxcpt.EncryptMsg(string.Format(textTpl, model.FromUserName, model.ToUserName, ConvertDateTimeInt(DateTime.Now), "text", respnseContent), sReqTimeStamp, sReqNonce, ref sResponse);

            LogTool.LogToDirDest(filePath, LogType.Debug, string.Format("{1} 加密前的消息:{0}", string.Format(textTpl, model.FromUserName, model.ToUserName, ConvertDateTimeInt(DateTime.Now), "text", respnseContent), pageUrl));
            LogTool.LogToDirDest(filePath, LogType.Debug, string.Format("{1} 加密后的消息:{0}", sResponse, pageUrl));

            Response.Write(sResponse);
            Response.End();
        }
时间: 2024-10-05 04:40:33

公众号第三方平台开发 教程四 代公众号处理消息和事件的相关文章

微信开放平台 公众号第三方平台开发 教程四 代公众号调用接口的SDK和demo

原文:微信开放平台 公众号第三方平台开发 教程四 代公众号调用接口的SDK和demo 教程导航: 微信开放平台 公众号第三方平台开发 教程一 平台介绍 微信开放平台 公众号第三方平台开发 教程二 创建公众号第三方平台 微信开放平台 公众号第三方平台开发 教程三 一键登录授权给第三方平台 微信开放平台 公众号第三方平台开发 教程四 代公众号调用接口的SDK和demo 前几章中我讲解了微信开发平台提供第三方平台的好处,和使用流程,如果你看了我的文章相信你对开放平台有了初步的了解,但是在实际的开发过程

微信开放平台 公众号第三方平台开发 教程五 代公众号发起网页授权源码

教程导航: 微信开放平台 公众号第三方平台开发 教程一 平台介绍 微信开放平台 公众号第三方平台开发 教程二 创建公众号第三方平台 微信开放平台 公众号第三方平台开发 教程三 一键登录授权给第三方平台 微信开放平台 公众号第三方平台开发 教程四 代公众号调用接口的SDK和demo 微信开放平台 公众号第三方平台开发 教程五 代公众号发起网页授权源码 由于最近比较忙,这个教程没有连续上,我会尽量连载.书节上回,上次我介绍了代公众号调用接口的方法和SDK的使用.不少朋友也都加了QQ群(2489462

公众号第三方平台开发 教程六 代公众号使用JS SDK说明

公众号第三方平台开发 教程一 创建公众号第三方平台 公众号第三方平台开发 教程二 component_verify_ticket和accessToken的获取 公众号第三方平台开发 教程三 微信公众号授权第三方平台 公众号第三方平台开发 教程四 代公众号发起网页授权说明 公众号第三方平台开发 教程五 代公众号处理消息和事件 公众号第三方平台开发 教程六 代公众号使用JS SDK说明 另,感谢一下这个大虾的博客,这几篇东西都是在他的博文基础上完成的,他的博客里也有一些接口代码可以下载 微信开发系列

微信开放平台 公众号第三方平台开发 教程二 创建公众号第三方平台

上节我们简单介绍了一下什么是公众号第三方平台,今天我们将具体操作如何创建属于您自己的微信第三方平台. 注册认证 用户首选需要注册成为开发平台的用户,注册地址:https://open.weixin.qq.com/ 注册和认证的详细步骤就省略了,没什么难度,相信所有人都看的懂,看不懂的加我QQ群咨询248946220,比较可恶的是认证还需要花300人民币大元,气愤.此处省略几万字. 言归正传,开始说一下详细步骤: 一.创建公众号第三方平台 用户登录后,依次进入管理中心.公众号第三方平台.创建公众号

公众号第三方平台开发 教程一 创建公众号第三方平台

注册 注册地址:https://open.weixin.qq.com/ 填写信息,提交资料并支付300块钱认证费之后等待认证通过. 一.创建公众号第三方平台 用户登录后,依次进入管理中心.公众号第三方平台.创建公众号第三方平台. 二.输入基本信息 输入基本信息中要特别注意,平台名称是不可以改变的,所以一定要慎重填写 三.选择权限集 根据自己的实际需求选择权限集.请谨慎选择,需要的权限集太多,到时用户愿意授权给你的几率相对会降低. 四.填写开发资料 填写开发资料.这里面填写的网址可以先根据自己的需

公众号第三方平台开发 教程三 微信公众号授权第三方平台

这一部分挺简单的,其实就是在页面上放一个链接,引导用户跳转即可 链接的格式如下: https://mp.weixin.qq.com/cgi-bin/componentloginpage?component_appid=xxxx&pre_auth_code=xxxxx&redirect_uri=xxxx, 这里对参数做一下说明 component_appid即第三方平台的APPID(如下图) pre_auth_code为预授权码,用获得的第三方平台AccessToken作为参数进行获取,具体

微信开放平台 公众号第三方平台开发 教程三 一键登录授权给第三方平台

原文:微信开放平台 公众号第三方平台开发 教程三 一键登录授权给第三方平台 教程导航: 微信开放平台 公众号第三方平台开发 教程一 平台介绍 微信开放平台 公众号第三方平台开发 教程二 创建公众号第三方平台 微信开放平台 公众号第三方平台开发 教程三 一键登录授权给第三方平台 微信开放平台 公众号第三方平台开发 教程四 代公众号调用接口的SDK和demo 公众号第三方平台的开放,是为了让公众号运营者,在面向垂直行业需求时,可以一键登录授权给第三方的公众号运营平台,通过第三方开发者提供的公众号第三

微信开放平台公众号第三方平台开发 教程一 平台介绍

微信现在火,火的如火如荼,给我们这些第三方的开发者带来了不少机会,相信现在有不少人在基于微信的公众平台在做二次开发,接下来会一系列的文章来介绍微信的另一种开发模式- 基于微信开发平台的公众号第三方平台开发,从基本的注册开始介绍,一步一步到所有的接口开发,并且针对与微信的开放平台的第三方平台的所有的接口我已经全部封装成了java的SDK,并且完全免费和开发,供所有开发者使用. 什么是公众号第三方平台,与现有的公众平台有什么区别? 官方介绍:公众号第三方平台的开放,是为了让公众号运营者,在面向垂直行

微信开放平台 公众号第三方平台开发 教程一 平台介绍

微信现在火,火的如火如荼,给我们这些第三方的开发者带来了不少机会,我相信现在有不少人在基于微信的公众平台在做二次开发,我将会写一系列的文章,来介绍微信的另一种开发模式- 基于微信开发平台的公众号第三方平台开发,从基本的注册开始介绍,一步一步到所有的接口开发,并且针对与微信的开放平台的第三方平台的所有的接口我已经全部封装成了.net的SDK,并且完全免费和开发,供所有开发者使用. 什么是公众号第三方平台,与现有的公众平台有什么区别? 官方介绍:公众号第三方平台的开放,是为了让公众号运营者,在面向垂