代码在最下面
具体请查看微信公众平台开发者文档--接入指南(http://mp.weixin.qq.com/wiki/8/f9a0b8382e0b77d87b3bcc1ce6fbc104.html)。
这里为了对照方便,还是捡了些重要的写在这里了。(纯粹凑字数)
1、填写微信服务器配置
2、检验服务器地址的有效性
开发者提交信息后,微信服务器将发送GET请求到填写的服务器地址URL上,GET请求携带四个参数: (注意是GET请求)
参数 | 描述 |
signature | 微信加密签名,signature结合了开发者填写的token参数和请求中的timestamp参数、nonce参数。 |
timestamp | 时间戳 |
nonce | 随机数 |
echostr | 随机字符串 |
开发者通过检验signature对请求进行校验。若确认此次GET请求来自微信服务器,请原样返回echostr参数内容,则接入生效,成为开发者成功,否则接入失败。
3、接入代码奉上
define("TOKEN", "542733246@qq.com"); // 此token为上图中设置的token,两处必须一致
if($_SERVER['REQUEST_METHOD'] == "GET") { // 判断是否为GET请求
$echoStr = $_GET["echostr"]; //效验成功需原样返回给微信服务器
if(checkSignature()) {
echo $echoStr;
exit;
}
}
//效验函数
function checkSignature() {
//检测token是否定义
if (!defined("TOKEN")) {
return false;
}
//接收微信服务器请求发送的参数
$signature = $_GET["signature"];
$timestamp = $_GET["timestamp"];
$nonce = $_GET["nonce"];
//将token、timestamp、nonce三个参数组装数组
$tmpArr = array(TOKEN, $timestamp, $nonce);
//进行字典序排序
sort($tmpArr, SORT_STRING);
//将三个参数字符串拼接成一个字符串进行sha1加密
$tmpStr = sha1( implode( $tmpArr ) );
//加密后的字符串可与signature对比,标识该请求来源于微信
if( $tmpStr == $signature ){
return true;
}else{
return false;
}
}
把上面代码上传至web服务器,这个文件的浏览地址输入到上图中的URL上就可以了。
至此微信接入就全部搞定。
如有不正确之处请在下面留言~~