C ++ - как отправить HTTP-запрос с помощью Curlpp или libcurl - PullRequest
7 голосов
/ 03 сентября 2010

Я бы хотел отправить запрос http на c ++. Похоже, что libcurl (Curlpp) - путь.

Теперь вот типичный запрос, который отправляю

http://abc.com:3456/handler1/start?<name-Value pairs>

The name values pairs will have:

field1: ABC
field2: b, c, d, e, f
field3: XYZ

etc.

Теперь я хотел бы знать, как добиться того же, используя curlpp или libcurl. Отрывки кода действительно помогут.

1 Ответ

3 голосов
/ 03 сентября 2010

У меня нет опыта работы с Curlpp, но я так и поступил с libcurl.

Вы можете установить целевой URL, используя

curl_easy_setopt(m_CurlPtr, CURLOPT_URL, "http://urlhere.com/");

Значения POST хранятся в связанном списке - у вас должно быть две переменные для хранения начала и конца этого списка, чтобы cURL мог добавить к нему значение.

struct curl_httppost* beginPostList;
struct curl_httppost* endPostList;

Затем вы можете добавить эту переменную поста, используя

curl_formadd(&beginPostList, &endPostList, CURLFORM_COPYNAME, "key", CURLFORM_COPYCONTENTS, "value", CURLFORM_END);

Отправка затем работает следующим образом

curl_easy_setopt(m_CurlPtr, CURLOPT_POST, true);
curl_easy_setopt(m_CurlPtr, CURLOPT_HTTPPOST, beginPostList); 
curl_easy_perform(m_CurlPtr);

Надеюсь, это поможет!

...