微信修改基本配置信息
1.登录微信公众平台 开发--基本配置 点击修改配置
2.填写相应信息 比如 服务器地址 http://www.myurl.com/wx.php Token : abc123
3.在相应的服务器文件wx.php里 写逻辑代码 即 : 通过检验signature对请求进行校验。若确认此次GET请求来自微信服务器,请原样返回echostr参数内容,则接入生效,成为开发者成功,否则接入失败。
4.微信文档里说的检验signature参数是出于安全起见 需要验证请求是否来自微信官方 如果不想做这步也可以跳过 直接在wx.php文件写如下代码 :
- <?php
- echo $_GET["echostr"]
- ?>
5.如果想检验signature参数 可以参考如下代码 :
- <?php
- define("TOKEN","abc123");
- //从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 ){
- echo $_GET["echostr"];
- }else{
- echo 'error';
- }
- ?>
- wx.php文件的保存编码不是纯UTF-8的 而是UTF-8包含BOM格式 这样的情况下会在页面输出时 在页面最前面空行 可以重新保存文件格式为UTF-8
- 在最后echo $echoStr前面加一句ob_clean() 清除掉输出缓存区中的内容;