微信公众平台开发-微信服务器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 相关文章推荐
在同一窗体中使用PHP来处理多个提交任务
Oct 09 PHP
php array_merge下进行数组合并的代码
Jul 22 PHP
PHP mkdir()无写权限的问题解决方法
Jun 19 PHP
php实现点击可刷新验证码
Nov 07 PHP
基于PHP实现短信验证码接口(容联运通讯)
Sep 06 PHP
PHP自定义函数实现格式化秒的方法
Sep 14 PHP
PHP isset()与empty()的使用区别详解
Feb 10 PHP
thinkphp关于简单的权限判定方法
Apr 03 PHP
php实现微信公众平台发红包功能
Jun 14 PHP
phpMyAdmin通过密码漏洞留后门文件
Nov 20 PHP
Laravel5.1 框架响应基本用法实例分析
Jan 04 PHP
PHP实现本地图片转base64格式并上传
May 29 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
PHP中常用数组处理方法实例分析
2008/08/30 PHP
jQuery实现图片信息的浮动显示实例代码
2013/08/28 Javascript
javascript仿php的print_r函数输出json数据
2013/09/13 Javascript
JS判断文本框内容改变事件的简单实例
2014/03/07 Javascript
jquery 表格排序、实时搜索表格内容(附图)
2014/05/19 Javascript
jquery append()方法与html()方法的区别及使用介绍
2014/08/01 Javascript
JS实现文件动态顺序载入的方法
2015/03/07 Javascript
jQuery+HTML5实现手机摇一摇换衣特效
2015/06/05 Javascript
在JavaScript中如何解决用execCommand(
2015/10/19 Javascript
jquery实现的V字形显示效果代码
2015/10/27 Javascript
Javascript将数值转换为金额格式(分隔千分位和自动增加小数点)
2016/06/22 Javascript
AngularJS入门教程之服务(Service)
2016/07/27 Javascript
JS组件系列之使用HTML标签的data属性初始化JS组件
2016/09/14 Javascript
详解Vue路由开启keep-alive时的注意点
2017/06/20 Javascript
Vue中使用clipboard实现复制功能
2018/09/05 Javascript
JS双向链表实现与使用方法示例(增加一个previous属性实现)
2019/01/31 Javascript
js实现多个倒计时并行 js拼团倒计时
2019/02/25 Javascript
Vue 递归多级菜单的实例代码
2019/05/05 Javascript
VUE实现密码验证与提示功能
2019/10/18 Javascript
在NodeJs中使用node-schedule增加定时器任务的方法
2020/06/08 NodeJs
python之wxPython应用实例
2014/09/28 Python
搞笑的程序猿:看看你是哪种Python程序员
2015/06/12 Python
详解Python Socket网络编程
2016/01/05 Python
老生常谈python之鸭子类和多态
2017/06/13 Python
Python编程之列表操作实例详解【创建、使用、更新、删除】
2017/07/22 Python
python 读文件,然后转化为矩阵的实例
2018/04/23 Python
python判断数字是否是超级素数幂
2018/09/27 Python
修改python plot折线图的坐标轴刻度方法
2018/12/13 Python
Python3安装psycopy2以及遇到问题解决方法
2019/07/03 Python
Python 实现Numpy中找出array中最大值所对应的行和列
2019/11/26 Python
python安装和pycharm环境搭建设置方法
2020/05/27 Python
Python命令行参数定义及需要注意的地方
2020/11/30 Python
Html5页面在微信端的分享的实现方法
2018/08/30 HTML / CSS
高分子材料与工程专业个人求职信
2013/12/15 职场文书
公司捐书倡议书
2015/04/27 职场文书
退休劳动合同怎么写?
2019/10/25 职场文书