我正在尝试使用Boost对JSON数组进行一些计算,我的问题如下:
如何进行休息调用(使用rest-client-cpp之类的东西)来填充带有JSON数据的Ptree而不是使用文件。
这是我到目前为止所做的:
namespace pt = boost::property_tree;
pt::ptree root;
pt::read_json("filename.json", root);
我想用通过GET请求引入的JSON替换“filename.json”。下面是使用“rest-client-cpp”
时的休息调用示例RestClient::response r = RestClient::get("http://urlhere.com");
有任何想法或建议吗?
答案 0 :(得分:1)
您可以使用接收istream
的{{3}}版本。您应该创建read_json并在其中存储响应内容。
RestClient::response r = RestClient::get("http://urlhere.com");
std::istreamstream stream(r.body);
pt::ptree root;
pt::read_json(stream, root);
答案 1 :(得分:0)
您可以使用std::istream
而不是文件名调用read_json。