企业微信接收用户输入消息内容并响应
前面一节说明了企业微信设置API接收,服务器回调配置的一些说明。这一节我们接着后面的内容来讲下在企业微信中,如何通过应用,接收用户消息。
业务逻辑:企业微信向回调地址以POST方式回调用户的数据,同时用GET方式带上3个参数,GET的三个参数分别是msg_signature、timestamp、nonce(参考企业微信开发文档)这里要注意的是,回调测试中GET还会传入一个echostr值,但是真正接收数据时是没有的。具体步骤如下:
①读取POST数据,并且返回加密后的XML格式文本。
②解密XML数据
③将解密的XML数据返回成对象
④根据需求处理消息,如将消息存入数据库等等。在下面演示中,是暂且存放在log日志中。
下面用代码来演示:
<?php
require_once "Getmessage_Wechat.class.php";
define(EncodingAesKey,"应用程序回调配置的EncodingAesKey");
define(Token,"应用程序回调配置的Token");
define(CorpId,"企业微信id号");
function getmessages(){
$sVerifyMsgSig = $_GET["msg_signature"];
$sVerifyTimeStamp = $_GET["timestamp"];
$sVerifyNonce = $_GET["nonce"];
//这里如果用$_POST是获取不到数据的,这里小编吃了好几次亏。
$postStr = $GLOBALS["HTTP_RAW_POST_DATA"]