微信公众平台开发-微信服务器IP接口实例(含源码)


Posted in PHP onMarch 05, 2017

学习了access_token的获取及应用后,正式的使用access_token调用下其他微信公众平台的接口,加深认识与使用方法。

一、获取微信服务器IP地址实例

(一)接口介绍

如果公众号基于安全等考虑,需要获知微信服务器的IP地址列表,以便进行相关限制,可以通过该接口获得微信服务器IP地址列表或者IP网段信息。

(二)实例调用

接口说明

http请求方式:GET

接口调用地址:

https://api.weixin.qq.com/cgi-bin/getcallbackip?access_token=ACCESS_TOKEN

请求参数说明,如表所示:

参数 是否必须 说明
access_token 公众号的access_token

返回说明:

正常情况下,微信会返回JSON数据包给公众号,如图所示:

微信公众平台开发-微信服务器IP接口实例(含源码)

返回信息参数说明,如表所示:

参数 说明
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

使用getdata()函数,获取到access_token后,继续替换$ipurl值的access_token值;

$iparr=(array)json_decode(getdata($ipurl));通过getdata()函数获取$ipurl的数据,然后通过json_decode函数处理后,获取到$iparr,此时,该变量值为一个二维数组,如图所示;

微信公众平台开发-微信服务器IP接口实例(含源码)

我们需要的是数组中的[ip_list],所以我们单独取出[ip_list]的数组集,并通过foreach循环出每一个微信服务器IP,

代码:

foreach ($iparr['ip_list'] as $key => $value)
{
echo $value."<br>";//用循环的方式打印IP集合
}

运行程序调用接口结果,如图所示。

 微信公众平台开发-微信服务器IP接口实例(含源码)

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持三水点靠木!

PHP 相关文章推荐
实现分十页分向前十页向后十页的处理
Oct 09 PHP
PHP中json_encode、json_decode与serialize、unserialize的性能测试分析
Jun 09 PHP
PHP 命令行参数详解及应用
May 18 PHP
解析用PHP读写音频文件信息的详解(支持WMA和MP3)
May 10 PHP
解析php通过cookies获取远程网页的指定代码
Jun 25 PHP
js+php实现静态页面实时调用用户登陆状态的方法
Jan 04 PHP
PHP整合PayPal支付
Jun 11 PHP
php采集中国代理服务器网的方法
Jun 16 PHP
解析WordPress中的post_class与get_post_class函数
Jan 04 PHP
PHP程序中的文件锁、互斥锁、读写锁使用技巧解析
Mar 21 PHP
thinkPHP分组后模板无法加载问题解决方法
Jul 12 PHP
thinkphp整合系列之极验滑动验证码geetest功能
Jun 18 PHP
php实现留言板功能
Mar 05 #PHP
Linux服务器下PHPMailer发送邮件失败的问题解决
Mar 04 #PHP
php获取网站根目录物理路径的几种方法(推荐)
Mar 04 #PHP
PHP获取路径和目录的方法总结【必看篇】
Mar 04 #PHP
php redis实现对200w用户的即时推送
Mar 04 #PHP
php获取目录中所有文件名及判断文件与目录的简单方法
Mar 04 #PHP
PHP redis实现超迷你全文检索
Mar 04 #PHP
You might like
PL-880隐藏功能
2021/03/01 无线电
php echo, print, print_r, sprintf, var_dump, var_expor的使用区别
2013/06/20 PHP
php字符串按照单词进行反转的方法
2015/03/14 PHP
PHP 实现类似js中alert() 提示框
2015/03/18 PHP
PHP微商城开源代码实例
2019/03/27 PHP
国外Lightbox v2.03.3 最新版 下载
2007/10/17 Javascript
JQuery 风格的HTML文本转义
2009/07/01 Javascript
HTA版JSMin(省略修饰语若干)基于javascript语言编写
2009/12/24 Javascript
《JavaScript高级程序设计》阅读笔记(二) ECMAScript中的原始类型
2012/02/27 Javascript
如何获取JQUERY AJAX返回的JSON结果集实现代码
2012/12/10 Javascript
JavaScript中的数值范围介绍
2014/12/29 Javascript
基于jquery实现轮播特效
2016/04/22 Javascript
jQuery基础的工厂函数以及定时器的经典实例分析
2016/05/20 Javascript
NodeJS学习笔记之Module的简介
2017/03/24 NodeJs
socket.io学习教程之基础介绍(一)
2017/04/29 Javascript
Vue学习笔记进阶篇之多元素及多组件过渡
2017/07/19 Javascript
seajs中最常用的7个功能、配置示例
2017/10/10 Javascript
JS实现获取汉字首字母拼音、全拼音及混拼音的方法
2017/11/14 Javascript
基于Vue2.X的路由和钩子函数详解
2018/02/09 Javascript
深入浅析JS中的严格模式
2018/06/04 Javascript
js制作提示框插件
2020/12/24 Javascript
python 获取文件列表(或是目录例表)
2009/03/25 Python
Python构建XML树结构的方法示例
2017/06/30 Python
python使用Pycharm创建一个Django项目
2018/03/05 Python
python 实现提取log文件中的关键句子,并进行统计分析
2019/12/24 Python
python如何基于redis实现ip代理池
2020/01/17 Python
Python日志器使用方法及原理解析
2020/09/27 Python
CSS3中的5个有趣的新技术
2009/04/02 HTML / CSS
LN-CC美国:伦敦时尚生活的缩影
2019/02/19 全球购物
Java中实现多态的机制是什么?
2014/12/07 面试题
某同学的自我鉴定范文
2013/12/26 职场文书
关于读书的演讲稿500字
2014/08/27 职场文书
毕业证代领委托书
2014/09/26 职场文书
小学教师师德师风自我剖析材料
2014/09/29 职场文书
精神文明建设汇报材料
2014/12/24 职场文书
Win11电脑显示本地时间与服务器时间不一致怎么解决?
2022/04/05 数码科技