[英]HTTP call from C++ using CPR?
我想使用CPR Github 库在 cpp 中发出 POST 请求
下面给出了等效的curl
请求。
echo '{"fund_name": "UTI Dual Advantage Fixed Term Fund Series I-IV (1099 Days) - Direct Plan - Dividend Option","from_date":"2015-01-15","to_date": "2016-12-15"}' | curl -d @- http://<ip>:<port>/api/v1/es/search
当我尝试使用此代码拨打电话时,总是收到500
。
auto r1 = cpr::Post(cpr::Url{"http://<ip>:<port>/api/v1/es/search"},
cpr::Payload{{"fund_name", fundName},
{"from_date", startDate},
{"to_date", endDate}}
);
我想,我无法正确转换json
。 任何建议。
我可以使用 cpr 发出 get 请求。
auto r = cpr::Get(cpr::Url{"https://api.github.com/repos/whoshuu/cpr/contributors"},
cpr::Authentication{"user", "pass"},
cpr::Parameters{{"anon", "true"}, {"key", "value"}});
r.status_code; // 200
r.header["content-type"]; // application/json; charset=utf-8
r.text; // JSON text string
}
我需要将json
对象传递到正文中。
Json my_json = Json::object {
{"fund_name", fundName},
{"from_date", startDate},
{"to_date", endDate}
};
auto r1 = cpr::Post(cpr::Url{"http://<ip>:<port>/api/v1/es/search"},
cpr::Body{my_json.dump()}
);
cpr::Payloads{}
, cpr::Parameters{}
在url
params 中传递参数。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.