Heim  >  Artikel  >  Backend-Entwicklung  >  微信公众平台企业号验证接口、回调 PHP版

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

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

微信公众平台企业号验证接口、回调 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

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn