C ++ - كيفية إرسال طلب نشر HTTP باستخدام Curlpp أو libcurl

StackOverflow https://stackoverflow.com/questions/3634251

  •  30-09-2019
  •  | 
  •  

سؤال

أود إرسال طلب نشر 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. قصاصات الكود ستساعد حقا.

هل كانت مفيدة؟

المحلول

ليس لديك خبرة مع Curlpp ولكن هذه هي الطريقة التي فعلت بها مع libcurl.

يمكنك تعيين عنوان URL المستهدف الخاص بك باستخدام

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

يتم تخزين قيم النشر في قائمة مرتبطة - يجب أن يكون لديك متغيرين للاحتفاظ بالبدء ونهاية تلك القائمة حتى يتمكن الضفيرة من إضافة قيمة إليها.

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);

أتمنى أن يساعدك هذا!

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top