मैं एक सी ++ लाइब्रेरी की तलाश में हूं जो HTTP क्लाइंट के कार्यान्वयन को लागू या सक्षम बनाता है। यह कुकीज़ को भी संभाल लेना चाहिए।HTTP क्लाइंट को लागू करने के लिए मुझे किस सी ++ लाइब्रेरी का उपयोग करना चाहिए?
आप क्या प्रस्तावित करेंगे?
मैं एक सी ++ लाइब्रेरी की तलाश में हूं जो HTTP क्लाइंट के कार्यान्वयन को लागू या सक्षम बनाता है। यह कुकीज़ को भी संभाल लेना चाहिए।HTTP क्लाइंट को लागू करने के लिए मुझे किस सी ++ लाइब्रेरी का उपयोग करना चाहिए?
आप क्या प्रस्तावित करेंगे?
Curl++: एक विकल्प है, खासकर यदि आप एक सी ++ शैली के अधिक में बातें करना चाहते हैं।
cpp-netlib: बहुत अच्छा और प्रयोग करने में आसान है, ubuntu पर उपलब्ध
sudo apt-get install libcppnetlib-dev
उदाहरण:
using namespace boost::network;
using namespace boost::network::http;
client::request request_("http://127.0.0.1:8000/");
request_ << header("Connection", "close");
client client_;
client::response response_ = client_.get(request_);
std::string body_ = body(response_);
टूटी हुई लिंक (15 वर्ण) –
एंडरस्कोर सम्मेलन का अंत क्या होता है संकेत मिलता है? – rbanffy
विंडोज़ पर आप IWebBrowser2
इंटरफ़ेस का उपयोग कर आईई ड्राइव कर सकते हैं।
मान्य, लेकिन उच्च प्रदर्शन आवश्यकताओं वाले लोगों के लिए ** ** वास्तव में ** धीमी समाधान। – Kiril
यदि यह विंडोज़ के लिए है, एक (WinHTTP)
http://msdn.microsoft.com/en-us/library/aa384273(VS.85).aspx विंडोज HTTP सेवा पर नज़र रखना
माइक्रोसॉफ्ट विंडोज HTTP सेवाएं (WinHTTP) एक HTTP क्लाइंट अनुप्रयोग प्रोग्रामिंग इंटरफेस के साथ डेवलपर्स प्रदान करता है (एपीआई) HTTP प्रोटोकॉल के माध्यम से अन्य HTTP सर्वर पर अनुरोध भेजने के लिए।
WinHTTP दोनों एक C/C++ एप्लीकेशन प्रोग्रामिंग इंटरफेस (एपीआई) और एक कंपोनेंट ऑब्जेक्ट मॉडल (COM) स्वचालन उपयुक्त सक्रिय सर्वर पृष्ठ (ASP) आधारित अनुप्रयोगों में प्रयोग के लिए घटक प्रदान करता है।
कुकीज़ के लिए http://msdn.microsoft.com/en-us/library/aa383261(VS.85).aspx
आपके सुझाव के लिए धन्यवाद। यह सी ++ के बिना सादा सी है। मैं वास्तव में बजरने के कड़ी मेहनत (http://research.att.com/~bs) का उपयोग करना चाहता हूं। आवेदन प्रोग्रामिंग में सी का उपयोग करने के लिए अब कुछ वर्षों से इसे प्रतिबंधित किया जाना चाहिए :) –
आप WinInet
http://msdn.microsoft.com/en-us/library/aa385331(VS.85).aspx
कोशिश कर सकते हैं WinHTTP के विपरीत, इसे और अधिक क्लाइंट साइड उन्मुख है।
आपके सुझाव के लिए धन्यवाद। इस प्रश्न पर WinHTTP उत्तर पर मेरी टिप्पणी पर एक नज़र डालें क्योंकि यह यहां भी लागू होता है। "// क्योंकि // कोई बफर आवंटित किया जाता है इस कॉल, पहली बार गुजरने पर असफल हो जायेगी। if (! HttpQueryInfo (hHttp, HTTP_QUERY_RAW_HEADERS_CRLF, (LPVOID) lpOutBuffer, और dwSize, शून्य))" उपयोग में आसानी के लिए " , WinINet इन प्रोटोकॉल को एक उच्च स्तरीय इंटरफ़ेस में सारणीबद्ध करता है। " उच्च स्तरीय इंटरफ़ेस? शायद यह 20 साल पहले उच्च स्तरीय इंटरफेस था ... –
आप यूआरएल monikers भी देख सकते हैं: http://msdn.microsoft.com/en-us/library/ms774965(VS.85).aspx, यह WinInet (जैसा कि मुझे लगता है) पर निर्भर करता है, लेकिन इंटरफ़ेस की तरह COM प्रदान करता है। – Eugene
@ पियेटर: अगर आपको लगता है कि WinHTTP खराब है, तो आप पर भरोसा करें, आप बिल्कुल * नफरत * WinInet ... यह एक आश्चर्यजनक रूप से असभ्य एपीआई है, भले ही आप सी पुस्तकालयों के साथ काम करने के लिए उपयोग किया जाता है। और इसका सबसे बुरा हिस्सा WinInet स्थिरांक और त्रुटियों है जो MSXML जैसे उच्च स्तरीय पुस्तकालयों के लिए "खून बह रहा" हो सकता है ... WinInet का बड़ा लाभ यह है कि यदि उपयोगकर्ता पहले से ही अपने खाते के लिए प्रॉक्सी सेटिंग्स कॉन्फ़िगर कर चुका है (व्यवस्थापक विकल्प या आईई/इंटरनेट विकल्प नियंत्रण कक्ष) तो WinInet स्वचालित रूप से उन्हें उठाएगा; अन्य पुस्तकालयों को स्पष्ट विन्यास की आवश्यकता हो सकती है। विंडोज़ केवल ... – Shog9
Poco Libraries पर एक नज़र डालें।
मैंने उनको उपयोग करना शुरू कर दिया क्योंकि वे पोर्टेबल हैं और यह काम करने में खुशी है। सरल और साफ - हालांकि इस पल के लिए मैंने कुछ भी कल्पना नहीं की है।
सभी विकल्प पुस्तकालय यदि आप जटिल http एपीआई की जरूरत है, कर्ल की कोशिश, अगर सिर्फ एक फ़ाइल प्राप्त करना चाहते हैं, http-छोटे कोशिश यहाँ उपलब्ध हैं
डुप्लिकेट: http://stackoverflow.com/प्रश्न/342918/सरल-एसिंक्रोनस-बहु-थ्रेडेड-http-request-library-for-c – lothar
इम्हो नहीं, यह एक और सवाल है (एसिंक्रोनस लाइब्रेरी, थ्रेडिंग) – dfa