在 PHP 中发送 Http 申请(GET / POST)有很多的办法,比方 file_get_contents() 函数、fopen() 函数或许 cURL 扩大,但因为效劳器的状况不同,所以不肯定会兼容一切状况,这样想要发送 Http 申请则需求通过一系列的判别,十分费事。
不过 WordPress 提供了一个 WP_Http 的类来帮你做好兼容性的判别,你只要要调用里边的函数就能实现发送 Http 申请。上面我就简略的引见一下这个类的罕用函数。
发送 GET 申请
/** *应用 WP_Http 类发送简略的 GET 申请 *http://www.endskin.com/wp_http/ */ $http = new WP_Http; $result = $http->request( 'http://www.endskin.com' );
上边的代码就把申请指标的信息存储到 $result 变量里了,$result 是一个数组,它有一下的键:
也就是说指标的内容就是 $result['body']
发送 POST 申请
假如需求发送 POST 申请就得用到 WP_Http->request() 的第二个参数了,上面看例子:
/** *应用 WP_Http 类发送简略的 POST 申请 *http://www.endskin.com/wp_http/ */ $http = new WP_Http; $post = array( 'name' => '斌果', 'blog' => 'http://www.bgbk.org' ); $result = $http->request( 'http://www.endskin.com', array( 'method' => 'POST', 'body' => $post ) );
前往的$result 变量内容请参考上边的 GET 申请。
需求验证的 POST 申请
如果你想在一些 RESTFul 的 API 提交一些信息,你首先需求进行验证,咱们需求发送一个含有用户名和明码对的 base64 编码的字符串给 API,具体如下:
// You would edit the following: $username = 'denishua'; // login $password = '123456'; // password $message = "I'm posting with the API"; // Now, the HTTP request: $api_url = 'http://your.api.url/update.xml'; $body = array( 'status' => $message ); $headers = array( 'Authorization' => 'Basic '.base64_encode("$username:$password") ); $request = new WP_Http; $result = $request->request( $api_url , array( 'method' => 'POST', 'body' => $body, 'headers' => $headers ) );
WordPress 退出 WP_Http 类之后,就保持了 Snoopy 这个 PHP Class,所以倡议大家给 WordPress 写插件的时分,尽量应用 WP_Http 来做 HTTP 申请。
以上就是安达网络工作室关于《在WordPress中实现发送http请求的相关函数解析》的一些看法。更多内容请查看本栏目更多内容!
链接方式http://localhost/?go=http://www.baidu.com这种方式转跳的办法。 复制代码代码如下:add_action('w...
Wordpress 版本:3.3.1 一. 去掉 index.php 1. 编写404.php 文件,上传保留到博客根目录(和wordpress 的 in...
从WordPress 2.7 开端退出了“置顶文章(Sticky Posts)”。置顶文章的作用是心愿长工夫惹起读者留...
本文实例讲述了WordPress首页显示多个图片及文字友谊链接的办法。分享给大家供大家参考。详细剖析如下: Wo...
去掉logo或许左侧栏的菜单,避免被改掉。 在应用模板下的functions.php下修正 复制代码代码如下: function ...
WordPress应用MySQL数据库。作为一个开发者,咱们有必要把握WordPress数据库的根本结构,并在本人的插件或主...