You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

41 lines
1.8 KiB

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

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');
}
}