微信公衆平臺開發-access_token獲取及應用(含源碼)
做者: 孟祥磊-《微信公衆平臺開發實例教程》php
學習了access_token的獲取及應用後,正式的使用access_token調用下其餘微信公衆平臺的接口,加深認識與使用方法。html
1、獲取微信服務器IP地址實例json
(一)接口介紹api
若是公衆號基於安全等考慮,須要獲知微信服務器的IP地址列表,以便進行相關限制,能夠經過該接口得到微信服務器IP地址列表或者IP網段信息。數組
(二)實例調用安全
接口說明服務器
http請求方式:GET微信
接口調用地址:app
https://api.weixin.qq.com/cgi-bin/getcallbackip?access_token=ACCESS_TOKEN微信公衆平臺
請求參數說明,如表所示:
參數 |
是否必須 |
說明 |
access_token |
是 |
公衆號的access_token |
返回說明:
正常狀況下,微信會返回JSON數據包給公衆號,如圖所示:
返回信息參數說明,如表所示:
參數 |
說明 |
ip_list |
微信服務器IP地址列表 |
代碼:
<?php /* *獲取微信服務器IP地址 */ require('wei_function.php'); $appid="wx78478e595939c538"; $secret="5540e8ccab4f71dfad752f73cfb85780"; $url="https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=".$appid."&secret=".$secret.""; $output=getdata($url); $token=(array)json_decode($output); //獲取到access_token參數 $token=$token['access_token']; //獲取微信服務器IP接口地址 $ipurl="https://api.weixin.qq.com/cgi-bin/getcallbackip?access_token=".$token.""; $iparr=(array)json_decode(getdata($ipurl)); foreach ($iparr['ip_list'] as $key => $value) { echo $value."<br>";//用循環的方式打印IP集合 } ?>
代碼解析:
require('wei_function.php');包含wei_function.php,該函數文件能夠購買《微信公衆平臺開發實例教程》,在該書中第95頁有詳細講解。
使用getdata()函數,獲取到access_token後,繼續替換$ipurl值的access_token值;
$iparr=(array)json_decode(getdata($ipurl));經過getdata()函數獲取$ipurl的數據,而後經過json_decode函數處理後,獲取到$iparr,此時,該變量值爲一個二維數組,如圖所示;
咱們須要的是數組中的[ip_list],因此咱們單獨取出[ip_list]的數組集,並經過foreach循環出每個微信服務器IP,
代碼:
foreach ($iparr['ip_list'] as $key => $value) { echo $value."<br>";//用循環的方式打印IP集合 }
運行程序調用接口結果,如圖所示。
孟祥磊公開課交流羣號:230175725