微信订阅号开发模式基本配置
2017-01-12 19:20
281 查看
今天学习君尝试了微信订阅号的简单开发 在验证开发者基本配置的时候 遇到了问题 ,不了解微信的规则 ! 查阅开发者文档 也没找到完整,详细 直观的介绍,百度之后终于成功了 在这里总结下
开发微信订阅号开发者模式基本设置必须要有线上服务器!
学习君使用的是php语言
/**
* 将timestamp,nonce,token按字典序排序
* 将排序好的三个参数拼接之后按照sha1加密
* 将加密后的字符串与signature进行对比,判断该请求是否来自微信
*/
$timestamp = $_GET['timestamp'];
$nonce = $_GET['nonce'];
$signature = $_GET['signature'];
$token = 'weixin';
$array = array($timestamp,$nonce,$token);
sort($array);
$tmpstr = implode('',$array);
$tmpstr = sha1($tmpstr);
if($tmpstr == $signature){
echo $_GET['echostr'];
exit;
}
微信订阅号基本配置
上面这三项需要开发者自己填写
url是 线上服务器访问根目录地址
token 自己定义
EncodingAESKey 随机生成
微信的认证流程是怎么样呢点击提交之后 微信会像填写的服务器地址发送一个GET请求 需要你接收验证 注意token不需要GET接值 直接写好!!
1.将三个参数sort() 函数排序后 拼接起来 用sha1()
函数进行加密
2.加密后与接收的signature
比较
3.相同的话则输出接收的echoser
OK 流程结束 需要强调的是 在第一次提交的时候可能代码并没有问题但是还是会报token验证错误 继续提交就可以!
共同学习共同进步!
开发微信订阅号开发者模式基本设置必须要有线上服务器!
学习君使用的是php语言
/**
* 将timestamp,nonce,token按字典序排序
* 将排序好的三个参数拼接之后按照sha1加密
* 将加密后的字符串与signature进行对比,判断该请求是否来自微信
*/
$timestamp = $_GET['timestamp'];
$nonce = $_GET['nonce'];
$signature = $_GET['signature'];
$token = 'weixin';
$array = array($timestamp,$nonce,$token);
sort($array);
$tmpstr = implode('',$array);
$tmpstr = sha1($tmpstr);
if($tmpstr == $signature){
echo $_GET['echostr'];
exit;
}
微信订阅号基本配置
上面这三项需要开发者自己填写
url是 线上服务器访问根目录地址
token 自己定义
EncodingAESKey 随机生成
微信的认证流程是怎么样呢点击提交之后 微信会像填写的服务器地址发送一个GET请求 需要你接收验证 注意token不需要GET接值 直接写好!!
1.将三个参数sort() 函数排序后 拼接起来 用sha1()
函数进行加密
2.加密后与接收的signature
比较
3.相同的话则输出接收的echoser
OK 流程结束 需要强调的是 在第一次提交的时候可能代码并没有问题但是还是会报token验证错误 继续提交就可以!
共同学习共同进步!