查询

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

「 向远程服务器发送POST http请求。 」


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

适用版本:Swoole 4.4.0及以上版本

用法: Swoole\Http\Client::post(string $path, mixed $data, callable $callback)

参数:

  • $path(必需):请求的路径,可以是相对路径或绝对路径。
  • $data(必需):请求的数据,可以是字符串、数组或对象。
  • $callback(必需):请求完成后的回调函数,用于处理服务器响应。

返回值:无

示例:

$client = new Swoole\Http\Client('127.0.0.1', 80);

// 发起POST请求
$client->post('/api/user', ['name' => 'John', 'age' => 25], function ($client) {
    if ($client->statusCode === 200) {
        echo "请求成功,服务器返回:" . $client->body;
    } else {
        echo "请求失败,错误码:" . $client->statusCode;
    }
    
    $client->close();
});

// 执行事件循环
Swoole\Event::wait();

在上述示例中,我们首先创建了一个Swoole\Http\Client对象,指定了服务器的IP地址和端口号。然后,通过调用post()方法发起了一个POST请求,传递了请求路径/api/user和请求数据['name' => 'John', 'age' => 25]。最后,我们传递了一个回调函数,在请求完成后进行处理。

在回调函数中,我们首先判断服务器返回的状态码是否为200,如果是,则表示请求成功,可以通过$client->body获取服务器返回的内容。如果状态码不是200,则表示请求失败,可以通过$client->statusCode获取错误码。

最后,我们调用$client->close()方法关闭客户端连接。为了保持事件循环运行,我们使用Swoole\Event::wait()方法等待事件的发生。

请注意,上述示例仅为演示目的,实际使用时需要根据具体情况进行适当的错误处理和异常处理。

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