首頁 >後端開發 >php教程 >php微信公眾平台配置介面開發程式的方法實例詳解

php微信公眾平台配置介面開發程式的方法實例詳解

墨辰丷
墨辰丷原創
2018-06-01 10:58:211892瀏覽

這篇文章主要為大家詳細介紹了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成功.如果不幸報錯了,沒關係我們找錯誤,點擊開發文件,點擊開始前必讀,點擊接口返回碼說明,我們對照一下,根據提示找錯誤就好了.

說道這裡我們的配置接口就完成了,下一節我們繼續微信開發->自訂選單建立介面.

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

相關推薦:

PHP製作登入異常ip檢測功能的實例

php實現目前頁面點選下載檔案的實例

php匯出csv檔案,可匯出前導0實例

#

以上是php微信公眾平台配置介面開發程式的方法實例詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn