使用CPPREST-SDK将STD ::向量转换为JSON

Convert std::vector to JSON using CPPREST-SDK

本文关键字:转换 JSON 向量 使用 STD CPPREST-SDK      更新时间:2023-10-16

目前我正在从事C 项目,使用CPPRESTSDK(又称Casablanca(编写API的服务器端。
cpprestsdk库中已经实现了诸如int,double等的序列化值。

我现在想问一下,是否有任何方法可以将std::vector序列化为客户端的json::value,进行reqeust,然后在服务器上对其进行验证吗?
类似:

    http_client client(U("http://localhost"));
    json::value jsonVector(std::vector);
    make_task_request(client, methods::POST, jsonVector)

谢谢您提前的一切!

向量序列化:

    std::vector<int> someVector;
    web::json::value json;
    std::vector<value> array;
    if (someVectory.size()) {
        for (auto num : someVector) {
            array.push_back(value(num));
        }
        json["yourKey"] = value::array(array);
    }

如果您不需要将数组推入容器对象,则只需使用将std::vector转换为数组的value::array(array)

值得注意,假设您在array中有一个已知数组:

    std::vector<int> intVector;
    for (auto it=array.cbegin();it!=array.cend();++it) {
        intVector.push_back(it->as_integer());
    }