WordPress教程

WordPress程序远程数据请求函数:wp_remote_post、wp_remote_get

阿里云

发起 HTTP 请求,是再平常不过的需求了。一般的就是使用 file_get_contents 或者 cURL。

但是在 WordPress 中,使用 file_get_contents 或者 cURL 开发的主题或插件,都会被 WordPress 官方拒绝。因为,WordPress 官方已经提供了封装好的 HTTP 请求函数。之前也曾简单介绍过:WordPress 使用 wp_remote_get 和 wp_remote_post 替代 curl。

也想出现在这里?联系我们
创客主机

wp_remote_get 发起 GET 请求

使用举例:

  1. $response = wp_remote_get( 'https://数据网址' );
  2. if ( is_array( $response ) && ! is_wp_error( $response ) && $response['response']['code'] == '200' ) {
  3. $headers = $response['headers']; // array of http header lines
  4. $body = $response['body']; // use the content
  5. }

在获取到 $body 后,要根据实际情况,对其进行解析。

wp_remote_post 发起 POST 请求

  • 'headers' (string[]) 响应头信息。
  • 'body' (string) 响应体。
  • 'response' (array) HTTP 相关的相应数据。
  • 'code' (int|false) HTTP CODE。
  • 'message' (string|false) HTTP 相应消息。
  • 'cookies' (WP_HTTP_Cookie[]) cookies 信息。
  • 'http_response' (WP_HTTP_Requests_Response|null) 原始的 HTTP 相应。

使用举例:

  1. $response = wp_remote_post( $url, array(
  2. 'method' => 'POST',
  3. 'timeout' => 45,
  4. 'redirection' => 5,
  5. 'httpversion' => '1.0',
  6. 'blocking' => true,
  7. 'headers' => array(),
  8. 'body' => array(
  9. 'username' => 'bob',
  10. 'password' => '1234xyz'
  11. ),
  12. 'cookies' => array()
  13. )
  14. );
  15.  
  16. if ( is_wp_error( $response ) ) {
  17. $error_message = $response->get_error_message();
  18. echo "Something went wrong: $error_message";
  19. } else {
  20. echo 'Response:<pre>';
  21. print_r( $response );
  22. echo '

';
}

wp_remote_get 发送 GET 请求到 URL 并返回数据 使用 GET 方法执行 HTTP 请求并返回其响应。 参数 数据类型 是否必需 描述 默认值 $url 字符串 […]
日期:2022/9/14 阅读:561阅读全文

WordPress 程序远程数据请求函数:wp_remote_post、wp_remote_get

已有 193 人购买
查看演示升级 VIP立刻购买

收藏
(0)

发表回复

热销模板

Ashade - 作品展示摄影相册WordPress汉化主题
LensNews

本站承接 WordPress / PbootCMS / DedeCMS 等
系统建站、仿站、开发、定制等业务!