接口说明
获取微信服务器IP地址
如果公众号基于安全等考虑,需要获知微信服务器的IP地址列表,以便进行相关限制,可以通过该接口获得微信服务器IP地址列表或者IP网段信息。
接口调用请求说明
http请求方式: GET
参数说明参数 是否必须说明
access_token是公众号的access_token
返回说明
正常情况下,微信会返回下述JSON数据包给公众号:{
"ip_list": [
"127.0.0.1",
"127.0.0.2",
"101.226.103.0/25"
]
}参数 说明
ip_list 微信服务器IP地址列表
错误时微信会返回错误码等信息,JSON数据包示例如下(该示例为AppID无效错误):{"errcode":40013,"errmsg":"invalid appid"}
java代码案例:package com.test.weixin;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLConnection;
public class TestServerIp {
/***
* 模拟get请求
* @param url
* @param charset
* @param timeout
* @return
*/
public static String sendGet(String url, String charset, int timeout)
{
String result = "";
try
{
URL u = new URL(url);
try
{
URLConnection conn = u.openConnection();
conn.connect();
conn.setConnectTimeout(timeout);
BufferedReader in = new BufferedReader(new InputStreamReader(conn.getInputStream(), charset));
String line="";
while ((line = in.readLine()) != null)
{
result = result + line;
}
in.close();
} catch (IOException e) {
return result;
}
}
catch (MalformedURLException e)
{
return result;
}
return result;
}
/**
* @param args
*/
public static void main(String[] args) {
String access_token="";//获取acess_token方法在上一节课已经讲述,地址https://www.vxzsk.com/28.html
String url ="https://api.weixin.qq.com/cgi-bin/getcallbackip?access_token="+access_token;
String jsonData = TestServerIp.sendGet(url, "utf-8", 10000);
System.out.println("返回:"+jsonData);
}
}