微信公众平台开发-微信服务器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 相关文章推荐
asp和php下textarea提交大量数据发生丢失的解决方法
Jan 20 PHP
CakePHP去除默认显示的标题及图标的方法
Oct 22 PHP
php 生成静态页面的办法与实现代码详细版
Feb 15 PHP
PHP+Mysql日期时间如何转换(UNIX时间戳和格式化日期)
Jul 15 PHP
关于mysql字符集设置了character_set_client=binary 在gbk情况下会出现表描述是乱码的情况
Jan 06 PHP
关于PHPDocument 代码注释规范的总结
Jun 25 PHP
phpQuery占用内存过多的处理方法
Nov 13 PHP
PHP闭包实例解析
Sep 08 PHP
ThinkPHP结合AjaxFileUploader实现无刷新文件上传的方法
Oct 29 PHP
WordPress开发中短代码的实现及相关函数使用技巧
Jan 05 PHP
PHP利用超级全局变量$_GET来接收表单数据的实例
Nov 05 PHP
php png失真的原因及解决办法
Oct 24 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
新的一年,新的期待:DC在2020年的四部动画电影
2020/01/01 欧美动漫
php提示Call-time pass-by-reference has been deprecated in的解决方法[已测]
2012/05/06 PHP
PHP实现可自定义样式的分页类
2016/03/29 PHP
PHP+Ajax+JS实现多图上传
2016/05/07 PHP
SCP远程VPS快速搬家和WDCP升级php5.3安装memcached和eaccelerator教程
2017/07/27 PHP
详解PHP如何更好的利用PHPstorm的自动提示
2017/08/18 PHP
Laravel 数据库加密及数据库表前缀配置方法
2019/10/10 PHP
jquery插件开发之实现md5插件
2014/03/17 Javascript
使用insertAfter()方法在现有元素后添加一个新元素
2014/05/28 Javascript
原生JavaScript+LESS实现瀑布流
2014/12/12 Javascript
nodejs爬虫抓取数据乱码问题总结
2015/07/03 NodeJs
javascript实现选中复选框后相关输入框变灰不可用的方法
2015/08/11 Javascript
使用angularjs创建简单表格
2016/01/21 Javascript
浅谈js的异步执行
2016/10/18 Javascript
JavaScript实现图片无缝滚动效果
2017/07/07 Javascript
JS实现颜色的10进制转化成rgba格式的方法
2017/09/04 Javascript
vue中子组件向父组件传递数据的实例代码(实现加减功能)
2018/04/20 Javascript
脚手架vue-cli工程webpack的作用和特点
2018/09/29 Javascript
详解微信小程序开发用户授权登陆
2019/04/24 Javascript
layer.prompt输入层的例子
2019/09/24 Javascript
零基础写python爬虫之urllib2中的两个重要概念:Openers和Handlers
2014/11/05 Python
在Python程序中操作文件之flush()方法的使用教程
2015/05/24 Python
python 实现自动远程登陆scp文件实例代码
2017/03/13 Python
Python 安装setuptools和pip工具操作方法(必看)
2017/05/22 Python
python取代netcat过程分析
2018/02/10 Python
Python对CSV、Excel、txt、dat文件的处理
2018/09/18 Python
Python -m参数原理及使用方法解析
2020/08/21 Python
django中cookiecutter的使用教程
2020/12/03 Python
利用HTML5实现使用按钮控制背景音乐开关
2015/09/21 HTML / CSS
Wilson体育用品官网:美国著名运动器材品牌
2019/05/12 全球购物
美发店5.1活动方案
2014/01/24 职场文书
2014大四本科生自我鉴定总结
2014/10/04 职场文书
观看禁毒宣传片后的感想
2015/08/11 职场文书
旅行社计调工作总结
2015/08/12 职场文书
python实现腾讯滑块验证码识别
2021/04/27 Python
MySQL 外连接语法之 OUTER JOIN
2022/04/09 MySQL