查询

Swoole\Http\Client::execute()函数—用法及示例

「 执行HTTP请求并返回响应结果 」


函数名称:Swoole\Http\Client::execute()

适用版本:Swoole >= 4.3.0

函数说明:Swoole\Http\Client::execute()方法用于执行HTTP请求并返回响应结果。

用法:

$client = new Swoole\Http\Client('www.example.com', 80);
$client->set([
    'timeout' => 1, // 设置超时时间,单位为秒
]);

// 发起GET请求
$client->execute('/path/to/api', function ($client) {
    if ($client->statusCode === 200) {
        echo $client->body;
    } else {
        echo 'Request failed with code: ' . $client->statusCode;
    }
    $client->close();
});

参数说明:

  • 第一个参数是请求的路径,可以是相对路径或绝对路径。
  • 第二个参数是回调函数,当请求完成时会调用该函数。回调函数参数$client是Swoole\Http\Client对象,可以在回调函数中获取响应结果。

返回值:无

示例解释:

  1. 创建一个Swoole\Http\Client对象,并设置超时时间为1秒。
  2. 调用execute()方法发起GET请求,传入请求路径和回调函数。
  3. 在回调函数中判断响应的状态码,如果为200则输出响应内容,否则输出错误信息。
  4. 最后关闭客户端连接。

注意事项:

  • 在执行execute()方法前,需要先创建Swoole\Http\Client对象,并通过set()方法设置相关参数,如超时时间、请求头等。
  • 回调函数是异步执行的,因此需要在回调函数中处理响应结果。
  • 在回调函数中可以通过$client对象的属性来获取响应的各种信息,如状态码、响应头、响应体等。
  • 完成请求后需要手动调用close()方法关闭客户端连接。

更多关于Swoole\Http\Client类和相关方法的详细信息,请参考Swoole官方文档:https://www.swoole.co.uk/docs/modules/swoole-http-client

补充纠错
热门PHP函数
分享链接