搭建本地服務器
- XAMPP
使用xampp作為本地的服務器
<?php
print 'hello world';
?>
我們在瀏覽器輸入127.0.0.1/wxtest.php,即可看到hello world(如果看不到,可以在xampp中關閉然后再開啟apache,再刷新頁面即可)。
-
natapp
使用natapp映射本地服務器到公網
natapp是一個建立公網映射的軟件,沒有云服務器的話,可以使用這個來代替,減少學習階段的開銷,用于微信公眾號開發的話,需要購買,每個月5元,價格相對來說很實惠。- 下載電腦對應版本的natapp
- 查看使用教程,配置啟動natapp
- 在natpp啟動界面可以看到127.0.0.1:80所映射的網址,這個網址就相當于我們的服務器網址。
- 上一步獲取到的網址比如說是:http://mywxtest.s1.natapp.cc/ 這個時候我們再打開可以打開http://mywxtest.s1.natapp.cc/wxtest.php , 即可打開我們之前寫的php文件
-
測試號申請
測試號申請網址,進入界面后使用微信掃碼登錄,會獲取到appID ,appsecret和我們的測試公眾號二維碼(在最下方,通過微信掃碼關注即可)
看到接口配置信息中url 和token為空,需要我們進行配置
<b>url</b> 需要填寫我們上次獲取的映射網址http://mywxtest.s1.natapp.cc/wxtest.php ,這個網址的意思是,以后公眾號用戶的所有動作交互都會發送到wxtest.app中進行處理
<b>token</b> 可以隨便填寫,但是得記住我們token填寫的內容.填寫完成url和token后,點擊確認,會提示配置錯誤,因為我們的wxtest.php還沒有編寫代碼處理發送過來的驗證信息。
我們需要<b>打開wxtest.php文件</b>(可以使用notepad++或其他可以進行php編輯的軟件)
<?php
//這里的TOKEN,就是我們上面填寫的token,值一定要相同,比如說之前填寫的是 weixin,那么就像下面這樣
define("TOKEN", "weixin");
//創建一個Test對象用來處理用戶發過來的消息
$wechatObj = new wechatCallbackapiTest();
//首先執行這個對象中的valid方法
$wechatObj->valid();
//聲明對象
class wechatCallbackapiTest
{
public function valid()
{
$echoStr = $_GET["echostr"];
//valid signature , option
if($this->checkSignature()){
echo $echoStr;
exit;
}
}
//主要用于測試服務地址的有效性
private function checkSignature()
{
// you must define TOKEN by yourself
if (!defined("TOKEN")) {
throw new Exception('TOKEN is not defined!');
}
$signature = $_GET["signature"];
$timestamp = $_GET["timestamp"];
$nonce = $_GET["nonce"];
$token = TOKEN;
$tmpArr = array($token, $timestamp, $nonce);
// use SORT_STRING rule
sort($tmpArr, SORT_STRING);
$tmpStr = implode( $tmpArr );
$tmpStr = sha1( $tmpStr );
if( $tmpStr == $signature ){
return true;
}else{
return false;
}
}
}
?>
5. 保存wxtest.php所編寫的內容,重新點擊網頁中的確認按鈕,則提示配置完成。