在现代社会中,公众号已经普遍开来,那么作为开发者的人们首先要做的就是服务器的配置,配置不成功下面的事情也进行不下去,那么如何配置呢?身为小白的我就简单总结一下。

共分为3个步骤:

填写服务器配置
验证信息是否来自微信服务器
依据借口文档实现业务逻辑
首先你得有自己的一个公众号,进入平台后进入基本设置界面点修改配置会出现如下图(本人的已经填写)

Url:填写的URL即是你服务器验证代码的地址。

Token:这里的值可以根据要求随意设置,但必须与上面的URL地址的Token值保持一致,不一致也会导致验证失败,从而配置不成功。
%title插图%num

点提交即可。

运行

<?php
/**
* wechat php test
*/

//define your token
define(“TOKEN”, “weixin”);//Tolen 记得和基础设置里面的Token一致,不一定就是weixin
$wechatObj = new wechatCallbackapiTest();
$wechatObj->valid();//首次配置使用此方法

class wechatCallbackapiTest
{
public function valid()
{
$echoStr = $_GET[“echostr”];//首次配置会传输

//valid signature , option
if($this->checkSignature()){//此处调用方法 判断是否来自微信服务器
echo $echoStr;
exit;
}
}

public function responseMsg()//配置完成后调用此方法
{
//get post data, May be due to the different environments
$postStr = $GLOBALS[“HTTP_RAW_POST_DATA”];

//extract post data
if (!empty($postStr)){

$postObj = simplexml_load_string($postStr, ‘SimpleXMLElement’, LIBXML_NOCDATA);//将字符串转换为对象
$fromUsername = $postObj->FromUserName;
$toUsername = $postObj->ToUserName;
$keyword = trim($postObj->Content);
$time = time();
$textTpl = “<xml>
<ToUserName><![CDATA[%s]]></ToUserName>
<FromUserName><![CDATA[%s]]></FromUserName>
<CreateTime>%s</CreateTime>
<MsgType><![CDATA[%s]]></MsgType>
<Content><![CDATA[%s]]></Content>
<FuncFlag>0</FuncFlag>
</xml>”;
if(!empty( $keyword ))
{
$msgType = “text”;
$contentStr = “Welcome to wechat world!”;
$resultStr = sprintf($textTpl, $fromUsername, $toUsername, $time, $msgType, $contentStr);
echo $resultStr;
}else{
echo “Input something…”;
}

}else {
echo “”;
exit;
}
}

private function checkSignature()
{
$signature = $_GET[“signature”];
$timestamp = $_GET[“timestamp”];
$nonce = $_GET[“nonce”];

$token = TOKEN;
$tmpArr = array($token, $timestamp, $nonce);
sort($tmpArr);
$tmpStr = implode( $tmpArr );//数组转换为字符串
$tmpStr = sha1( $tmpStr );//加密

if( $tmpStr == $signature ){
return true;
}else{
return false;
}
}
}

?>

%title插图%num

点击提交若显示配置成功,那祝你成功配置好了,接下来就开动你的脑筋编写你的代码吧!