在 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请求的相关函数解析》的一些看法。更多内容请查看本栏目更多内容!
导航菜单 导航菜单早已 "深化民意", 在博客上的使用日益重要且多样. 从本文开端, 我将展开几个对于 WordPre...
明天发文章时,惊奇的发现文章的ID居然曾经抵达了19了。鉴于我以前折腾Wordpress的经历,我晓得这是Wordpre...
从ThemeForest购买的是正版商业主题AVADA(有售后技术支持),应用国际阿里云主机(配置不算低),网站大局...
有些时分,在索引页中(首页、分类文章、标签文章、作者文章索引……)提行进入 WordPress 文章循环中( Lo...
1,先配置一下您的SMTP账户的用户名和明码。 2,将上面的内容粘贴到以后主题的 functions.php 中即可,留意...
其次要用处是经过该办法, 完成后盾的生成菜枯燥用。 应用该性能之前,必需激活主题3.0+菜单性能。 办法如下...