微信公眾號:伺服器如何配置(已啟用)?php實現介面配置伺服器資源資訊,填寫URL後正確響應微信傳送的Token驗證
阿新 • • 發佈:2019-02-07
最終配置效果如下所示:
首先註冊微信公眾號,申請測試賬號什麼的我就不細說了。
一、關於微信公眾號接入網址
這是從開發者文件上面弄下來的,下圖就是接入的地方,在開發者中心-伺服器的配置,
看一下微信開發者文件是怎麼說的
URL:就是你的伺服器的URL(要能響應TOKEN驗證,還要能在外網訪問到這個伺服器,因為自己有伺服器用就不說多了,沒有伺服器的可以用SAE,在上面申請,不過好像要實名認證,)
TOKEN:這個算是自己設定的一個驗證碼,要自己在程式碼裡面設定的(並且當微信伺服器器把GET請求發到你的伺服器的時候,能返回這個值,
注:微信伺服器的GET請求會帶四個引數signature,token,timestamp,echostr;POST請求會帶三個引數除了剛才的echostr)
EncodingAeskey:直接點選隨機生成就好了。
接著直接上程式碼
<?php //定義常量token define('TOKEN','一畝地'); //檢查標籤 function checkSignature() { //先獲取到這三個引數 $signature = $_GET['signature']; $nonce = $_GET['nonce']; $timestamp = $_GET['timestamp']; //把這三個引數存到一個數組裡面 $tmpArr = array($timestamp,$nonce,TOKEN); //進行字典排序 sort($tmpArr); //把陣列中的元素合併成字串,impode()函式是用來將一個數組合併成字串的 $tmpStr = implode($tmpArr); //sha1加密,呼叫sha1函式 $tmpStr = sha1($tmpStr); //判斷加密後的字串是否和signature相等 if($tmpStr == $signature) { return true; } return false; } //如果相等,驗證成功就返回echostr if(checkSignature()) { //返回echostr $echostr = $_GET['echostr']; if($echostr) { echo $echostr; exit; } } ?>
備註:直接在你所寫的URL對應的位置下,上傳以上程式碼,然後寫入對應的token,在微信公眾平臺提交即可,完成伺服器的驗證!
最後把這個程式碼傳到你的伺服器,URL,token什麼的填寫好,出現配置成功就OK了。