|
|
|
|
namespace LaneWeChat\Core;
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* Auth类用于与微信公众平台进行交互。
|
|
|
|
|
* 该类提供了一个方法来获取微信服务器的IP列表,通常用于服务器白名单的配置。
|
|
|
|
|
* 白名单配置可以帮助确保微信服务器能够正常与当前服务器进行通信。
|
|
|
|
|
*
|
|
|
|
|
* 创建者:lixuan-it@360.cn
|
|
|
|
|
* 用户名:lane
|
|
|
|
|
* 日期:15/4/29
|
|
|
|
|
* 时间:上午10:51
|
|
|
|
|
* 邮箱:lixuan868686@163.com
|
|
|
|
|
* 网站:http://www.lanecn.com
|
|
|
|
|
*/
|
|
|
|
|
class Auth {
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 获取微信服务器IP列表
|
|
|
|
|
*
|
|
|
|
|
* 该方法请求微信公众平台的API接口,获取微信服务器的IP地址列表。
|
|
|
|
|
* 获取到的IP地址列表可以用于设置服务器的白名单,以保证微信服务器能够正常访问当前服务器。
|
|
|
|
|
*
|
|
|
|
|
* @return mixed 返回微信服务器的IP列表,通常为JSON格式的数据。
|
|
|
|
|
*/
|
|
|
|
|
public static function getWeChatIPList(){
|
|
|
|
|
// 获取ACCESS_TOKEN:调用AccessToken类中的getAccessToken方法来获取有效的ACCESS_TOKEN。
|
|
|
|
|
// ACCESS_TOKEN是调用微信API时必需的授权令牌,必须在每次请求时附带。
|
|
|
|
|
$accessToken = AccessToken::getAccessToken();
|
|
|
|
|
|
|
|
|
|
// 构造请求微信API的URL,拼接获取到的ACCESS_TOKEN。
|
|
|
|
|
// API地址为 'https://api.weixin.qq.com/cgi-bin/getcallbackip?access_token='
|
|
|
|
|
// 通过此URL可以获取到微信服务器的IP列表。
|
|
|
|
|
$url = 'https://api.weixin.qq.com/cgi-bin/getcallbackip?access_token=' . $accessToken;
|
|
|
|
|
|
|
|
|
|
// 使用Curl类的callWebServer方法发起GET请求,向微信API请求IP地址列表。
|
|
|
|
|
// 'callWebServer' 方法会通过cURL发起HTTP请求,返回微信API的响应数据。
|
|
|
|
|
// 返回的数据通常是一个包含微信服务器IP地址的JSON格式字符串。
|
|
|
|
|
return Curl::callWebServer($url, '', 'GET');
|
|
|
|
|
}
|
|
|
|
|
}
|