微信开发者中心如何配置
微信开发者中心配置是怎么样的呢,那么微信开发者中心又是如何配置的呢?下面是学习啦小编收集整理的微信开发者中心如何配置,希望对大家有帮助~~
微信开发者中心配置的方法
工具/原料
一台电脑和一个微信公众号
需要再SEA上部署环境
方法/步骤
从微信公众平台打开`开发者服务中心`连接,https://mp.weixin.qq.com第一次打开时会提示用户注册成为开发者,接受协议,成为开发者.
接受协议以后会出现配置选项.平台为我们生成了`AppID`,`AppSecret`这些字段.我们需要点击`修改配置`对`服务器配置`区块进行配置.在此期间,可能会出现信息不全,需要补齐信息的提示,这时候去上传一个公众号的头像就OK了.`URL(服务器地址)`指的是我们公众号的服务的地址,也就是我们之前申请好的SAE的服务域名,如果忘记可以去sAE控台查看,我这里的是 http://weixinshow001.sinaapp.com`Token(令牌)`相当于微信服务器和我们自己的服务器之间交流的一个约定,用于确定我们的服务器接收到的消息确实是微信的服务器发出的.我这里填写为weixin.`EncodingAESKey(消息加解密密钥)`信息加密密钥.随机生成就可以了.填写完成后点击提交.这时候会提示`token`验证失败.
token验证失败的原因是,我们在SAE上还未对token进行验证.我们在`微信公众号`的接入指南http://mp.weixin.qq.com/wiki/17/ ... 70a95559800f2d.html中可以看到token的验证方式,并且提供了验证的示例代码.
开发者提交信息后,微信服务器将发送GET请求到填写的服务器地址URL上,GET请求携带四个参数:参数 描述signature 微信加密签名,signature结合了开发者填写的token参数和请求中的timestamp参数、nonce参数。timestamp 时间戳nonce 随机数echostr 随机字符串开发者通过检验signature对请求进行校验(下面有校验方式)。若确认此次GET请求来自微信服务器,请原样返回echostr参数内容,则接入生效,成为开发者成功,否则接入失败。加密/校验流程如下:1. 将token、timestamp、nonce三个参数进行字典序排序2. 将三个参数字符串拼接成一个字符串进行sha1加密3. 开发者获得加密后的字符串可与signature对比,标识该请求来源于微信
现在我们需要编写SAE主页的代码,实现token的验证功能.打开利用SVN抓取到本地的代码,找到`index.php`文件,并使用文本编辑器打开,在文本编辑器中输入如下代码:
define("TOKEN","weixin");
function checkSignature()
{
//从GET参数中读取三个字段的值
$signature = $_GET["signature"];
$timestamp = $_GET["timestamp"];
$nonce = $_GET["nonce"];
//读取预定义的TOKEN
$token = TOKEN;
//对数组进行排序
$tmpArr = array($token, $timestamp, $nonce);
sort($tmpArr, SORT_STRING);
//对三个字段进行sha1运算
$tmpStr = implode( $tmpArr );
$tmpStr = sha1( $tmpStr );
//判断我方计算的结果是否和微信端计算的结果相符
//这样利用只有微信端和我方了解的token作对比,验证访问是否来自微信官方.
if( $tmpStr == $signature ){
return true;
}else{
return false;
}
}
if(checkSignature()){
echo $_GET["echostr"];
}
else{
echo 'error';
}
复制代码
要注意,保存后只是储存在本地了,并没有在SAE的服务器上起作用,我们需要用svn提交代码到svn仓库,相应的更改才能生效!用svn提交代码到svn仓库,相应的更改才能生效!用svn提交代码到svn仓库,相应的更改才能生效!(重要的事情说三遍).最近有朋友指出,这个验证不通过.可能是由于用户没有通过SAE的实名认证,当用户没有通过实名认证时,SAE会在返回的消息里加上一些小尾巴,这样导致了返回给微信服务器的字符串不能匹配,出现了验证不通过的问题.
重新提交微信配置信息,这时候我们的提交会显示成功.然后点击`启用`按钮,微信公众号的处理将全部转由我们的SAE服务器处理.ps:a. SAE可以看到访问日志,在`应用控台`的`日志中心`标签下,我们能看到每次访问的数据,这对于我们调试配置不通过出现的错误有一定的用处.b. 在日志中心我们可以看到微信服务器访问的url参数,我们可以直接使用浏览器来直接GET这个url以便在页面中输出我们需要的调试数据.
微信开发者中心如何配置相关文章: