httplib::Client 的 Post json数据
时间: 2023-08-05 12:09:43 浏览: 650
httpclient post json 数据
4星 · 用户满意度95%
使用 httplib 库的 Client 类可以通过 POST 请求发送 JSON 数据,具体实现如下:
```c++
#include <iostream>
#include <httplib.h>
#include <nlohmann/json.hpp>
using json = nlohmann::json;
int main() {
// 创建 JSON 数据
json data = {
{"name", "Tom"},
{"age", 20},
{"gender", "male"}
};
// 转换为字符串
std::string json_str = data.dump();
// 创建 httplib::Client 对象
httplib::Client cli("localhost", 8080);
// 构造 POST 请求
auto res = cli.Post("/api", json_str, "application/json");
if (res) {
if (res->status == 200) {
std::cout << res->body << std::endl;
} else {
std::cout << "Error code: " << res->status << std::endl;
}
} else {
std::cout << "Error sending request." << std::endl;
}
return 0;
}
```
其中,`json` 类型是 `nlohmann/json` 库中的一种 JSON 数据类型,可以用来创建和操作 JSON 数据。在这个例子中,我们创建了一个包含名字、年龄和性别的 JSON 数据,并将其转换为字符串。
然后,我们创建了一个 `httplib::Client` 对象,并使用 `Post` 方法发送 POST 请求。第一个参数是请求的路径,第二个参数是要发送的数据,第三个参数是数据类型。
最后,我们检查响应状态码和响应体,并进行相应的处理。
阅读全文