微信小程序 消息推送php服务器验证实例详解
微信小程序消息推送php服务器验证实例详解
微信文档(靠下有个“接入指引”):https://mp.weixin.qq.com/debug/wxadoc/dev/api/custommsg/callback_help.html
设置页面(“设置”>>“开发设置”):
https://mp.weixin.qq.com/wxopen/initprofile?action=home&lang=zh_CN
1.设置服务器域名
比如:https://hosts.com
注意http和https协议的不同。
2.设置消息推送
2.1在你的服务器里添加服务器接口test.php,test.php接口内容主要是通过token验证消息是否为微信发来的,代码参照官方的例子:
define("TOKEN","xxxxx");/后台填写的token
$wechatObj=newwechatAPI();
$wechatObj->isValid();
classwechatAPI
{
publicfunctionisValid()//验证微信接口,如果确认是微信就返回它传来的echostr参数
{
$echoStr=$_GET["echostr"];
if($this->checkSignature()){
echo$echoStr;
exit;
}
}
privatefunctioncheckSignature()//官方的验证函数
{
$signature=$_GET["signature"];
$timestamp=$_GET["timestamp"];
$nonce=$_GET["nonce"];
$token=TOKEN;
$tmpArr=array($token,$timestamp,$nonce);
sort($tmpArr,SORT_STRING);
$tmpStr=implode($tmpArr);
$tmpStr=sha1($tmpStr);
if($tmpStr==$signature){
returntrue;
}else{
returnfalse;
}
}
};
2.2设置小程序后台消息推送相关信息
URL(服务器地址):https://hosts.com/xx/test.php
Token:任意符合规范的字符串,如上面定义的"xxxxx"
EncodingAESKey(消息加密密钥):(随机生成,自己保存就好了,这个加解密才用)
消息加密方式:暂时选择明文,不用去考虑加密解密的问题。
数据格式:根据需求选择。
提交,如果没有问题就会成功了。(如果有问题你可以用假的数据通过浏览器测试)
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!