2013-02-13 67 views
8

के साथ http सर्वर विकसित करने के लिए कैसे मैं libcurl के साथ काम कर रहा हूँ। यह बहुत अच्छा है (क्लाइंट के रूप में) और मैं सर्वर पर सॉकेट खोलता था और फिर अपने http पैकेट भेजता था।libcurl

मुझे आश्चर्य है कि libcurl के साथ http सर्वर विकसित करना संभव है या नहीं। http सर्वर किसी दिए गए पोर्ट पर तब सुनेंगे जब उसे http पैकेट प्राप्त होता है तो http सर्वर एक पाचन प्रमाणीकरण की आवश्यकता को वापस कर देता है।

मैंने स्टैक ओवरफ्लो और कर्ल वेबसाइट में कुछ शोध किया लेकिन परिणाम के बिना।

क्या libcurl के साथ ऐसा करना संभव है? और यह कैसे करें?

+1

curl एक क्लाइंट-साइड लाइब्रेरी है, यह सर्वर विकसित करने के लिए उपयुक्त नहीं है। –

उत्तर

9

को एक बार देख ले दोहराने के लिए क्या अन्य लोगों ने कहा: नहीं, libcurl सर्वर के लिए नहीं है। यह curl FAQ में भी कहा गया है:

5.17 क्या मैं libcurl के साथ एक सर्वर लिख सकता हूं?

नहीं। Libcurl इंटरनेट प्रोटोकॉल सर्वर के किसी भी प्रकार बनाने के लिए कोई फ़ंक्शन या बिल्डिंग ब्लॉक प्रदान नहीं करता है। libcurl केवल क्लाइंट-साइड लाइब्रेरी है। सर्वर पुस्तकालयों के लिए, आपको अपनी खोज कहीं और जारी रखने की आवश्यकता है लेकिन अधिकांश प्रोटोकॉल के लिए वहां कई अच्छे ओपन सोर्स मौजूद हैं, आप संभवत: एक सर्वर चाहते हैं। और वास्तव में अच्छे स्टैंड-अलोन हैं जिन्हें कई वर्षों तक परीक्षण और साबित किया गया है। आपको फिर से शुरू करने की कोई ज़रूरत नहीं है!

0

यह libcurl के प्रयोजन लगता नहीं है, जैसा कि आप ने कहा है libcurl में कार्य करता है एक ग्राहक के रूप में, http://www.gnu.org/software/libmicrohttpd/

+0

मुझे कोड स्रोत दिखाई देता है और यह एक बड़ा प्रोग्राम दिखता है। मैं अपने कोड में शामिल करने के लिए एक छोटा सा कोड ढूंढ रहा हूं, बस उस विशिष्ट मामले के लिए काम करने के लिए – MOHAMED

+0

क्या आपके द्वारा किए गए कोड से कुछ फ़ंक्शन को निकालना संभव है? – MOHAMED

2

आप, कुछ HTTP सर्वर पुस्तकालय की जरूरत है (क्योंकि libcurl केवल एक HTTP ग्राहक librart है) मैं libonion उपयोग करने के लिए सुझाव है लेकिन वहाँ कई अन्य HTTP सर्वर चौखटे (libmicrohttpd हैं POCO & सी ++ में Wt। ...)। यहां तक ​​कि अगर एक छोटे सबसेट के लिए एक सर्वर कोडिंग (सादा GET अनुरोधों की तरह, सशर्त अनुरोध, एन्कोडिंग & संपीड़न, आदि जैसे सभी उपयोगी सुविधाओं के बिना ...) का यह यथोचित संभव है

HTTP, एक जटिल प्रोटोकॉल है। इसलिए मैं एक पूर्ण HTTP सर्वर लाइब्रेरी का उपयोग करने की अनुशंसा करता हूं, और यह छोटा लाइब्रेरी नहीं हो सकता है।

 संबंधित मुद्दे

  • कोई संबंधित समस्या नहीं^_^