在 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请求的相关函数解析》的一些看法。更多内容请查看本栏目更多内容!
环境 效劳器操作零碎:CentOS 7.0 博客部署效劳器:Apache 后盾言语:PHP 数据库:MySql 前端框...
在WordPress上增加中文用户时报错说不支持中文,失去如下谬误:谬误:请填写用户名。谬误:此用户名蕴含有效...
因为国际大多冤家普通都是间接装置WordPress中文版,所以,倡萌在此以WordPress 3.4.2中文版进行演示。 1....
当然 Wordpress 2.7 里有“小工具”选项也能管制 Widget ,然而重复试验后发现款式无奈对立,可控...
wordpress不同分类调用不同模板文件 用wordpress做站特地是企业站的时分,多个分类的内容不同需求显示的页面...
本人平常用到的一些函数,整顿一下,大家有用到来拿吧,我怕放电脑上不见了,当前又得找。 Index page 首页...