php微信公眾平台配置介面開發程式的方法執行個體詳解

來源:互聯網
上載者:User
這篇文章主要為大家詳細介紹了php公眾平台配置介面開發程式,具有一定的參考價值,感興趣的小夥伴們可以參考一下

在閱讀這篇文章之前你要做以下的準備:

1.註冊一個訂閱號(通過公眾平台https://mp.weixin.qq.com/);
2.註冊新浪雲並實名認證http://sae.sina.com.cn/
3.實名認證新浪雲之後,建立一個雲應用.
4.你需要知道php基礎知識.

一:驗證介面

1.登入我們的公眾號.然後點擊進入開發人員工具,在登入之後頁面的左下角.

2.點擊進入開發人員文檔.之後點擊開始開發,點擊接入指南,我們會看到如.

圖片上有說,接入公眾平台開發,開發人員需要按照如下步驟完成:

1.填寫伺服器配置
2.驗證伺服器位址的有效性
3.依據介面文檔實現商務邏輯.

第一步:填寫伺服器配置

我們登入公眾號之後,右下角基本開發配置點進去,

URL是開發人員用來接收訊息和事件的介面URL.具體怎麼填我們等下詳細說.

Token可以隨意填寫(但是每個人都不一樣的,如果後面提交失敗可以試著修改Token),這個Token會和介面中包含的Token進行比對,從而驗證安全性,EncodingAESKey由開發人員手動填寫或隨機產生,將用作訊息體加解密密鑰。

填寫的URL,需要我們有自己的伺服器的地址,現在我們就要到我們之前註冊的新浪云云應用了.

一.登入新浪雲,點擊雲應用,點擊進入控制台.如建立

二.級網域名稱和應用程式名稱,自己起個名字就好.然後點擊進入紅色標記的地方.

三.如箭頭指示點擊進入編輯代碼

四.之後會彈出SAE的介面,我們需要在裡面建立一個php檔案,然後點擊通過URL訪問,之後我們把這個網址拷貝下來,放到我們之前基本配置的URL上.

第二步:驗證訊息的確來自伺服器

具體的php代碼如下:

<?php // //最簡單的驗證方式 // echo $_GET["echostr"]; //驗證是否來自於 function checkWeixin(){  //會發送4個參數到我們的伺服器後台 簽名 時間戳記 隨機字串 隨機數  $signature = $_GET["signature"];  $timestamp = $_GET["timestamp"];  $nonce = $_GET["nonce"];  $echostr = $_GET["echostr"];  $token = "qilipingmgl";  // 1)將token、timestamp、nonce三個參數進行字典序排序  $tmpArr = array($nonce,$token,$timestamp);  sort($tmpArr,SORT_STRING);  // 2)將三個參數字串拼接成一個字串進行sha1加密  $str = implode($tmpArr);  $sign = sha1($str);  // 3)開發人員獲得加密後的字串可與signature對比,標識該請求來源於  if ($sign == $signature) {   echo $echostr;  } } checkWeixin();?>

注意:代碼中 $token 是每個人不同的,我們需要填寫自己的,點擊開發人員工具,之後右邊有公眾平台測試帳號,點擊進入,之後我們會看到介面配置,把Token複製過來放到代碼中.

我們把這個代碼複製到我們剛建立的SAE的php檔案裡,再儲存(記得要儲存哦),然後點擊通過URL訪問,

如果報錯了(報錯的資訊是數位話),請點擊開發人員文檔中,點擊開始前必讀,有個介面返回碼說明,我們可以對照一下,錯誤在哪裡, 注意:0的時候表示請求成功.

二.擷取access_token

提示:access_token是公眾號的全域唯一介面調用憑據,公眾號調用各介面時都需使用access_token.我們作為開發人員要妥善儲存,access_token的有效期間目前為2個小時,需定時重新整理,重複擷取將導致上次擷取的access_token失效。

第一步,我們點擊開發人員文檔,點擊開始開發,點擊擷取access_token之後會看到,http請求方式:GET,然後一個網址,我們需要用到這個網址,如,

E0204D74-2EA6-4943-B93F-7E7C1E2FA88A.png

第二步:我們寫GET請求的函數,擷取access_token

<?php class Weixin{  private $appID = "wxe62f370c4e2cade2";  private $appsecret = "58807091ae5a4c59ee3e47108184bdb7";  function getAccessToken(){   $url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid={$this->appID}&secret={$this->appsecret}";   // return $this->httpGet($url);   //json字串   $json = $this->httpGet($url);   //解析json   $obj = json_decode($json);   return $obj->access_token;  }  function httpGet($url){   //1.初始化   $curl = curl_init();   //配置curl   curl_setopt($curl, CURLOPT_URL, $url);   curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);   //執行curl   $res = curl_exec($curl);   //關閉curl   curl_close($curl);   return $res;  } } $wx = new Weixin(); echo $wx->getAccessToken(); /*  擷取access_token方法 get方法 */?>

注意:代碼中 $appID 和 $appsecret 是每個人不同的,我們需要填寫自己的,點擊開發人員工具,之後右邊有公眾平台測試帳號,點擊進入,之後我們會看到測試號資訊.然後複製過來放到代碼中.

第三步:我們代碼複製到SAEphp檔案中,點擊右鍵通過URL訪問,如果返回 {"access_token":"ACCESS_TOKEN","expires_in":7200} 表示我們擷取token成功.如果不幸報錯了,沒關係我們找錯誤,點擊開發文檔,點擊開始前必讀,點擊介面返回碼說明,我們對照一下,根據提示找錯誤就好了.

說道這裡我們的配置介面就完成了,下一節我們繼續開發->自定菜單建立介面.

總結:以上就是本篇文的全部內容,希望能對大家的學習有所協助。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.