在使用WordPress发送HTTP请求是一件非常容易的事,很多PHP函数都能实现,比如fopencurl等,但是不同的PHP环境中,这些函数可能是不被允许使用的。为了能为开发者提供一个稳定的,不受环境影响的发送HTTP请求工具,WordPress官方提供了WP_Http类。

WordPress 2.7 开始引入了一个新的 PHP Class:WP_Http(在 wp-includes 目录 http.php 文件中)。这个 Class 的强大之处是它会检测服务器的情况,选择最好的方法去实现 HTTP 请求,所以我们自己无须去检测 HTTP 扩展。

类方法

_dispatch_request — 向支持传输发送HTTP请求。-弃用

_get_first_available_transport —测试能够支持请求的传输。

block_request — 确定是否应阻止对给定URL的HTTPAPI请求。

browser_redirect_compatibility — 将重定向行为匹配到浏览器处理。

buildCookieHeader — 传入一个request()参数,并检查cookie数组。

chunkTransferDecode — 解码块传输-编码,基于HTTP1.1规范。

get — 使用HTTP GET方式访问。

handle_redirects — 处理HTTP重定向,并酌情遵循它。

head — 使用Head HTTP方法。

is_ip_address — 确定指定的字符串是否表示IP地址。

make_absolute_url — 将相对URL转换为相对于给定URL的绝对URL。

normalize_cookies — 规范用于请求的cookie。

parse_url — 用作PHP解析_url()函数的包装器,该函数处理PHP 5.4.7中的EDgecase。-弃用

post — 使用HTTP POST方法访问。

processHeaders — 将头字符串转换为数组。

processResponse — 解析响应并将部分拆分为标题和正文。

request — 向URI发送HTTP请求。

validate_redirects — 验证重定向URL。

简单使用

发送GET请求

/** *使用 WP_Http 类发送简单的 GET 请求 */
$http = new WP_Http; 
$result = $http->request( 'http://www.11px.cn' );

返回如下字段

headers:返回的 headers 信息,是一个数组

body:目标的内容,和在浏览器里直接看是一样的

response:返回的代码,如果请求成功会返回 array( ‘code’=>200, ‘message’=>’OK’ )

cookies:Cookie 信息,是一个数组

发送POST请求

/***使用 WP_Http 类发送简单的 POST
$http = new WP_Http;
$parm = array( 'name' => 'daimadog', 'blog' => 'http://www.11px.cn' );
$result = $http->request( 'http://www.11px.cn', array( 'method' => 'POST', 'body' => $parm ) );

返回如下字段

headers:返回的 headers 信息,是一个数组

body:目标的内容,和在浏览器里直接看是一样的

response:返回的代码,如果请求成功会返回 array( ‘code’=>200, ‘message’=>’OK’ )

cookies:Cookie 信息,是一个数组

本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!邮箱:yangbinvap@qq.com分享目的仅供大家学习和交流,您必须在下载后24小时内删除!不得使用于非法商业用途,不得违反国家法律。否则后果自负!本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!如有链接无法下载、失效或广告,请联系管理员处理!本站资源售价只是赞助,收取费用仅维持本站的日常运营所需!如遇到加密压缩包,请使用WINRAR解压,如遇到无法解压的请联系管理员! 精力有限,不少源码未能详细测试(解密),不能分辨部分源码是病毒还是误报,所以没有进行任何修改,大家使用前请进行甄别。