700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > php 接入微信 验证 PHP实现微信公众平台企业号验证接口

php 接入微信 验证 PHP实现微信公众平台企业号验证接口

时间:2024-07-12 19:38:01

相关推荐

php 接入微信 验证 PHP实现微信公众平台企业号验证接口

这篇文章主要介绍了PHP编程之微信公众平台企业号验证接口,是通过回调操作实现的企业号验证功能接口,需要的朋友可以参考下

本文实例讲述了PHP微信公众平台企业号验证接口。分享给大家供大家参考,具体如下:

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

"

".sReqTimeStamp."

";

$sEncryptMsg = ""; //xml格式的密文

$errCode = $wxcpt->EncryptMsg($sRespData, $sReqTimeStamp, $sReqNonce, $sEncryptMsg);

if ($errCode == 0) {

//file_put_contents('smg_response.txt', $sEncryptMsg); //debug:查看smg

print($sEncryptMsg);

} else {

print($errCode . "\n\n");

}

} else {

print($errCode . "\n\n");

}

?>

以上就是本文的全部内容,希望对大家的学习有所帮助,更多相关内容请关注PHP中文网!

相关推荐:

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。