微信企业号开发:启用回调模式

微信企业号开发如何启用回调模式?就是简单的登陆PC版微信,点击应用中心,选择需要应用,再点击回调模式启用?

似乎不是这么简单!!


可以看到核心的只有三个URL,Token,EncodingAESKey这三个参数可以随便填写吗?
1URL可以随便填写吗?
 
可以肯定的是,不能随便填写。不信你可以试试。因为点击确定后微信会给这个URL发送信息。因此这个URL必须是外网可以访问的地址。
而且后台还必须处理微信发送过来的信息。例如URL 是http://www.hao123.com/可以在外网方法,但点击保存时就会出现:
echostr校验失败,请您检查是否正确解密并输出明文echostr


2Token可以随便填写吗?
可以,目前我没有发现有什么特殊的要求

3EncodingAESKey能随便填写吗?
不能随便填写,必须是数字字母的组合,而且是43个字符,建议使用微信随机生成的。
 

我们知道在URL处配置一个外网可以访问的URL,并不能保证保存成功,后台如何处理呢?
例如我配置为http://.../TestWeixin.ashx
则后台的处理方式,需要调用微信的相关加密解密函数
TestWeixin.ashx的后台代码为:

 public void ProcessRequest (HttpContext context) {
        if (context.Request.HttpMethod.ToLower() == "post")
        {            

        }
        else //点击保存时,微信需要验证时调用
        {
            Valid();
        }
    }

	 private void Valid()
    {
        string msg_signature = HttpContext.Current.Request.QueryString["msg_signature"];
        string timestamp = HttpContext.Current.Request.QueryString["timestamp"];
        string nonce = HttpContext.Current.Request.QueryString["nonce"];
        string decryptEchoString = "";  // 解析之后的明文
        string echoStr = HttpContext.Current.Request.QueryString["echoStr"];
        bool isok = CheckSignature(msg_signature, timestamp, nonce, echoStr, ref decryptEchoString);
        if (isok)
        {
            if (!string.IsNullOrEmpty(decryptEchoString))
            {
                HttpContext.Current.Response.Write(decryptEchoString);
                HttpContext.Current.Response.End();
            }
        }
    }
	public bool CheckSignature(string signature, string timestamp, string nonce,string echostr, ref string retEchostr)
    {
        string token = "token"; //配置的token
        string corpId = "corpId"; //corpid,
        string encodingAESKey = "encodingAESKey"; //配置的tokenencodingAESKey
        WXBizMsgCrypt wxcpt = new WXBizMsgCrypt(token, encodingAESKey, corpId); //调用微信提供的函数
        int result = wxcpt.VerifyURL(signature, timestamp, nonce, echostr, ref retEchostr);//调用微信提供的函数
        if (result != 0)
        {
            LogInfo.Error("ERR: VerifyURL fail, ret: " + result);
            return false;
        }
        return true;
        //ret==0表示验证成功,retEchostr参数表示明文,用户需要将retEchostr作为get请求的返回参数,返回给企业号。
    }


版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-08-13 21:24:22

微信企业号开发:启用回调模式的相关文章

微信企业号开发之回调模式的接口开发

一.前言 微信企业号应用中,有两种模式,一种是普通模式,这种模式只能进行简单网页链接,以及发送固定的消息.为了可以让企业号的用户更好的与应用交互,微信提供了回调模式,这种回调模式的可以将用户发送给微信的信息,转发到用户提供的一个回调接口上,该接口解析用户发送过来的信息,解析后进行相应,而且回调模式中,可以调用的东西不少,扫码,图片,视频,地理位置信息等. 在应用的模式下,选择回调模式,之后,需要设置3个参数(1.回调接口URL:2.token:3.ASESKey),URL就是提供的回调接口,微信

.net之微信企业号开发(三) 回调模式的接口开发

一.前言 微信企业号应用中,有两种模式,一种是普通模式,这种模式只能进行简单网页链接,以及发送固定的消息.为了可以让企业号的用户更好的与应用交互,微信提供了回调模式,这种回调模式的可以将用户发送给微信的信息,转发到用户提供的一个回调接口上,该接口解析用户发送过来的信息,解析后进行相应,而且回调模式中,可以调用的东西不少,扫码,图片,视频,地理位置信息等. 在应用的模式下,选择回调模式,之后,需要设置3个参数(1.回调接口URL:2.token:3.ASESKey),URL就是提供的回调接口,微信

微信公众平台企业号开发—开启回调模式

2014年9月17日,微信发布了期待已久的企业号.网上关于企业号的教程几乎还是0,所以这里分享一下的我的开发经验. 对比于订阅号和服务号的开发,企业号的开发显得更加复杂一点.这大概也是腾讯考虑到企业信息安全性要求比较高的缘故,在消息的收发和一些验证上都增加了加密解密的操作.这就需要开发者认真去阅读官方说明(其实通过官方说明你可以解决几乎所有问题),接下来我开启回调模式的步骤: 1.申请企业号:这个步骤这里就不详细赘述了,可以参考 http://jingyan.baidu.com/article/

微信企业号开发:接收消息和事件

接收到的消息和事件,其实都是微信post到我们配置的URL的消息.接收普通消息就是用户给公众号发送的消息,事件是由于用户的特定操作,微信post给我们的消息.被动响应消息是我们收到微信post过来的普通消息或者是事件时,企业号通过Response.Write这种方式回复的消息. 核心代码: 把微信post过来的数据先解密,转为能处理的XML,再把XML转为对象 #region 将POST过来的数据转化成实体对象 /// <summary> /// 将微信POST过来的数据转化成实体对象 ///

微信企业号开发之 企业号人员身份认证与开发

前言 这里完全可以链接一个登录页面,让用户输入用户名密码进行登录的...2333 但是,这样所就完全失去了微信企业号的意义,本来进入微信企业号的时候,就已经对人员身份进行认证了,你这里再让别人登录,不是显得多余么? 于是,需要考虑的是,如何获取微信企业号中用户的身份,以及将用户身份与自有系统进行关联. 一.建立企业应用并配置可信域名 在微信的管理界面里面,建立一个企业应用.建立的过程很简单,但是这里需要注意的是,建立完以后,一定要配置可信域名!!!!并且如果你不是使用的标准端口,一定也要把端口配

.net之微信企业号开发(二) 企业号人员身份认证与开发

前言 这里完全可以链接一个登录页面,让用户输入用户名密码进行登录的...2333 但是,这样所就完全失去了微信企业号的意义,本来进入微信企业号的时候,就已经对人员身份进行认证了,你这里再让别人登录,不是显得多余么? 于是,需要考虑的是,如何获取微信企业号中用户的身份,以及将用户身份与自有系统进行关联. 一.建立企业应用并配置可信域名 在微信的管理界面里面,建立一个企业应用.建立的过程很简单,但是这里需要注意的是,建立完以后,一定要配置可信域名!!!!并且如果你不是使用的标准端口,一定也要把端口配

微信企业号开发一:主动调用模式之TOKEN申请

微信企业号开发,数据访问格式分为以下三种: 1.企业应用调用企业号提供的接口,管理或查询企业号后台所管理的资源.或给成员发送消息等,以下称主动调用模式. 2.企业号把用户发送的消息或用户触发的事件推送给企业应用,由企业应用处理,以下称回调模式. 3.用户在微信中阅读企业应用下发的H5页面,该页面可以调用微信提供的原生接口,使用微信开放的终端能力,以下称JSAPI模式: 官方文档地址:http://qydev.weixin.qq.com/wiki/index.php 现在我们来看一下主动调用模式的

Force.com微信企业号开发系列(一) - 启用二次验证

微信于9月份推出企业号后引起了业界不小的反响,许多企业都在思索企业号将如何影响企业的运营,从本文开始,我将详细阐述微信企业号开发的相关知识,而本文将着重介绍如何实现更高安全机制的二次验证. 申请企业体验号: 企业号顾名思义就是企业来申请的号,申请时就像申请服务号一样,需要提供各种组织证明文件,对广大开发者来说很难操作,好在腾讯公司也像服务号一样开通了体验号申请,留意企业体验号的有效期间非常短,只有90天(服务号测试账号有1年有效期),且如果企业体验号长期不使用还会收到腾讯公司的提前失效提醒邮件.

[转载]微信企业号开发如何建立连接

连接将使你的企业号更具价值,你可以使用以下三种方式,连接你的企业号及企业应用: 1.企业应用调用企业号提供的接口,管理或查询企业号后台所管理的资源.或给成员发送消息等,以下称主动调用模式. 2.企业号把用户发送的消息或用户触发的事件推送给企业应用,由企业应用处理,以下称回调模式. 3.用户在微信中阅读企业应用下发的H5页面,该页面可以调用微信提供的原生接口,使用微信开放的终端能力,以下称JSAPI模式. 通过这三种连接方式的结合,你可以在企业号中建立功能强大的移动轻应用,并依托微信数亿活跃用户,