wp_remote_post 发送 HTTP POST 请求并返回相应

使用 wp_remote_post 发送 HTTP POST 请求并返回相应

1. 什么是 wp_remote_post?

wp_remote_post 是 WordPress 提供的一种发送 HTTP POST 请求的函数。通过 wp_remote_post 函数,我们可以方便地与其他网站进行数据交互,比如获取其他网站的数据、提交数据到其他网站等等。

2. wp_remote_post 函数的参数

wp_remote_post 函数有三个必填参数:


wp_remote_post( $url, $args = array(), $deprecated = '' );

其中,$url 表示接收 POST 请求的网站地址;$args 是一个关联数组,用于设置 POST 请求的参数,比如 POST 数据、请求头、超时时间等等;$deprecated 已经弃用,不用管它。

3. 如何使用 wp_remote_post 函数发送 HTTP POST 请求

以下是一个示例代码,展示了如何使用 wp_remote_post 函数发送 HTTP POST 请求:


// 要提交的 POST 数据
$data = array(
    'name' => 'John',
    'email' => 'john@example.com',
);

// 设置 HTTP 请求头
$headers = array(
    'Content-Type' => 'application/x-www-form-urlencoded',
);

// 设置 HTTP 请求参数
$args = array(
    'method' => 'POST',
    'timeout' => 15,
    'redirection' => 5,
    'httpversion' => '1.0',
    'blocking' => true,
    'headers' => $headers,
    'body' => $data,
    'cookies' => array(),
);

// 发送 HTTP POST 请求
$response = wp_remote_post( 'https://post.example.com/', $args );

// 获取响应数据
if( !is_wp_error( $response ) ) {
    $body = wp_remote_retrieve_body( $response );
    echo $body;
} else {
    echo 'Error: ' . $response->get_error_message();
}

在上面的代码中,我们首先设置了要提交的 POST 数据,然后通过设置 $headers 数组设置了 HTTP 请求头。接着,我们通过设置 $args 数组来设置整个 HTTP 请求的参数,最后调用 wp_remote_post 函数发送 HTTP POST 请求,并获取响应数据。

4. wp_remote_post 函数的返回值

wp_remote_post 函数发送 HTTP POST 请求后,会返回一个响应对象。可以通过以下函数获取响应对象的数据:

  • wp_remote_retrieve_response_code():获取响应码
  • wp_remote_retrieve_response_message():获取响应信息
  • wp_remote_retrieve_headers():获取响应头信息
  • wp_remote_retrieve_body():获取响应体数据

例如,要获取响应体数据,可以使用以下代码:


if( !is_wp_error( $response ) ) {
    $body = wp_remote_retrieve_body( $response );
    echo $body;
} else {
    echo 'Error: ' . $response->get_error_message();
}

这段代码会判断响应对象是否有错误,如果没有错误,就通过 wp_remote_retrieve_body 函数获取响应体数据,并输出到页面上。

晓白博客网版权所有,原文地址https://www.xbnb.cn/5174
© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享
评论 抢沙发

请登录后发表评论

    请登录后查看评论内容