查询

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

「 设置HTTP请求的body数据 」


函数名:Swoole\Http\Client::setData()

函数说明:该函数用于设置HTTP请求的body数据。

参数说明:

  • $data:要发送的数据。可以是字符串、数组或对象。

返回值:无

使用示例:

// 创建Swoole Http Client对象
$client = new Swoole\Http\Client('www.example.com', 80);

// 设置请求的body数据为字符串
$client->setData('Hello World');

// 或者设置请求的body数据为数组
$data = [
    'name' => 'John',
    'age' => 25,
];
$client->setData($data);

// 或者设置请求的body数据为对象
$data = new stdClass();
$data->name = 'John';
$data->age = 25;
$client->setData($data);

// 发送HTTP POST请求
$client->post('/api/endpoint', function ($client) {
    if ($client->statusCode === 200) {
        echo $client->body;
    } else {
        echo 'Request failed with status code: ' . $client->statusCode;
    }
});

// 关闭Http Client连接
$client->close();

注意事项:

  • 在调用setData()函数之前,必须先调用connect()函数与服务器建立连接。
  • setData()函数只对POST请求有效,对GET请求无效。
  • 如果要发送JSON数据,可以先使用json_encode()函数将数组或对象转换为JSON字符串,然后调用setData()函数发送。例如:$client->setData(json_encode($data));
  • 如果要发送文件,可以使用setData()函数设置文件路径。例如:$client->setData('/path/to/file.txt');
  • setData()函数可以在发送请求之前多次调用,最终发送的数据将会合并。
补充纠错
热门PHP函数
分享链接