Home  >  Article  >  Backend Development  >  微信公众平台企业号验证接口、回调 PHP版

微信公众平台企业号验证接口、回调 PHP版

WBOY
WBOYOriginal
2016-06-23 13:47:20972browse

微信公众平台企业号验证接口、回调 PHP版,本人为了解决这个企业号的验证和发送消息的问题,整整研究了几天时间,因为微信企业号刚推出来,网上资料太少了!后来在一些朋友的帮助下和本人反复调试完善下,终于整理得到了比较理想的文档,经亲测,实验成功。


include_once "WXBizMsgCrypt.php";// 第三方发送消息给公众平台 $encodingAesKey = "rpJmhCphnndiCLIcNKcUmhTn2GQBNjISPU9GfsfOlxx"; $token = "xxxxxxx"; $corpId ="wxa9a0031f24631f9x"; //这里已正确填写自己的corpid //公众号服务器数据$sReqMsgSig = $sVerifyMsgSig = $_GET['msg_signature'];$sReqTimeStamp = $sVerifyTimeStamp = $_GET['timestamp'];$sReqNonce = $sVerifyNonce = $_GET['nonce'];$sReqData = file_get_contents("php://input");;$sVerifyEchoStr = $_GET['echostr']; $wxcpt = new WXBizMsgCrypt($token, $encodingAesKey, $corpId); if($sVerifyEchoStr){$sEchoStr = "";$errCode = $wxcpt->VerifyURL($sVerifyMsgSig, $sVerifyTimeStamp, $sVerifyNonce, $sVerifyEchoStr, $sEchoStr);if ($errCode == 0) {print($sEchoStr); } else {print($errCode . "\n\n");}exit;} //decrypt$sMsg = "";  //解析之后的明文$errCode = $wxcpt->DecryptMsg($sReqMsgSig, $sReqTimeStamp, $sReqNonce, $sReqData, $sMsg);if ($errCode == 0) { $xml = new DOMDocument();$xml->loadXML($sMsg); $reqToUserName = $xml->getElementsByTagName('ToUserName')->item(0)->nodeValue;$reqFromUserName = $xml->getElementsByTagName('FromUserName')->item(0)->nodeValue;$reqCreateTime = $xml->getElementsByTagName('CreateTime')->item(0)->nodeValue;$reqMsgType = $xml->getElementsByTagName('MsgType')->item(0)->nodeValue;$reqContent = $xml->getElementsByTagName('Content')->item(0)->nodeValue;$reqMsgId = $xml->getElementsByTagName('MsgId')->item(0)->nodeValue;$reqAgentID = $xml->getElementsByTagName('AgentID')->item(0)->nodeValue; switch($reqContent){case "马云":$mycontent="您好,马云!我知道您创建了阿里巴巴!";break;case "马化腾":$mycontent="您好,马化腾!我知道创建了企鹅帝国!";break;case "史玉柱":$mycontent="您好,史玉柱!我知道您创建了巨人网络!";break;default :$mycontent="你是谁啊?!一边凉快去!";break;}$sRespData = "<xml><tousername></tousername><fromusername></fromusername><createtime>".sReqTimeStamp."</createtime><msgtype></msgtype><content></content></xml>";$sEncryptMsg = ""; //xml格式的密文$errCode = $wxcpt->EncryptMsg($sRespData, $sReqTimeStamp, $sReqNonce, $sEncryptMsg);if ($errCode == 0) {//file_put_contents('smg_response.txt', $sEncryptMsg); //debug:查看smgprint($sEncryptMsg);} else {print($errCode . "\n\n");}} else {print($errCode . "\n\n");}?>



WXBizMsgCrypt.php 文件请点击下面地址下载 :

http://mp.weixin.qq.com/wiki/downloads/SampleCode.zip

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn