Список для формирования закодированных параметров в Касабланке - PullRequest
0 голосов
/ 10 июля 2020

Я использую cpprestsdk ( casabalanca ) для POST запроса к серверу, и у меня есть список параметров

std::list<std::pair<string, string>> query;
query.push_back(std::make_pair("val1", "one two"));
query.push_back(std::make_pair("val2", "yo"));

, которые необходимо закодировать как form-encoded parameters.

val1=one%20two&val2=yo

Проблема: я не могу найти Api для этого (например, у меня есть web::json::value для полезной нагрузки json). Мне нужно закодировать каждый ключ / значение и самому выполнить конкатенацию. Есть Api, который мне не хватает, или его просто не существует?

1 Ответ

0 голосов
/ 10 июля 2020

Нашел решение ...

web::http::http_request request;

web::uri_builder parameter;
parameter.append_query("val1", "one two", true);
parameter.append_query("val2", "yo", true);

request.set_body(parameter.query(), web::http::details::mime_types::application_x_www_form_urlencoded);
...