2012-03-03 12 views
5

मेरे पास मेरा सॉकेट कार्यान्वयन है जो नियमित टीसीपी क्लाइंट से कनेक्शन का समर्थन करता है। अब मैं अपने सर्वर प्रोग्राम में वेबस्केट समर्थन जोड़ना चाहता हूं। उस स्थिति में मुझे प्रमुख वेब ब्राउज़र द्वारा समर्थित हैंडशेकिंग और संदेश फ़्रेमिंग प्रोटोकॉल का समर्थन करने की आवश्यकता होगी। मैं हैंडशेकिंग भाग को संभालने में सक्षम था, लेकिन संदेशों के फ़्रेमिंग और अन-फ़्रेमिंग से निपटने में फंस गया था। क्या कोई मौजूदा सी या सी ++ लाइब्रेरी है जो वेबसाईट संदेश फ्रेम के एन्कोडिंग और डिकोडिंग को संभालती है, और प्रमुख वेब ब्राउज़र द्वारा उपयोग किए जाने वाले प्रमुख वेबसाइकिल प्रोटोकॉल का समर्थन करती है?सी या सी ++ लाइब्रेरी एन्कोडिंग और डिकोडिंग वेबस्केट फ्रेम

मुझे मिले अधिकांश मौजूदा कार्यान्वयन (यानी libwebsocket, websocketpp, आदि) अपने स्वयं के सर्वर और क्लाइंट लाइब्रेरी को लागू करते हैं, जिसका अर्थ है कि मुझे अपने सॉकेट कार्यान्वयन का उपयोग करने की आवश्यकता है। मैं ऐसा नहीं करना चाहता क्योंकि मुझे मेरे वर्तमान कार्यक्रम में बहुत सी चीजों को संशोधित करने की आवश्यकता होगी, और यह मेरे लिए एक विकल्प नहीं है। मुझे जो चाहिए वह सिर्फ एक साधारण पुस्तकालय है जो वेबसाइकिल फ्रेम के एन्कोडिंग और डिकोडिंग को नियंत्रित करता है (और/या हैंडशेकिंग भाग को भी संभालता है, लेकिन यह अनिवार्य नहीं है)।

+1

[phpws] (http://code.google.com/p/phpws/source/browse/phpws/websocket.framing.php) से पोर्टिंग के बारे में कैसे? कोड बहुत सरल दिखता है। – Chikei

उत्तर

5

websocketpp लाइब्रेरी अच्छी तरह डिज़ाइन की गई है और फ्रेम हैंडलिंग कक्षाएं सॉकेट वाले के साथ मिश्रित नहीं हैं। बूस्ट और एसटीएल पुस्तकालयों पर निर्भरता है। एसटीएल कोई समस्या नहीं है और बूस्ट निर्भरता से बचने में काफी आसान है। नीति-रिफैक्टर शाखा की websocket_frame.hpp फ़ाइल से बस शुरू करें।

6

Websocketpp लाइब्रेरी लेखक यहां।

फ्रेम प्रसंस्करण और हैंडशेक प्रसंस्करण कोड सॉकेट/नेटवर्क कोड से पूरी तरह से अलग है। पॉलिसी-रिफैक्टर शाखा के प्रोसेसर फ़ोल्डर को देखें। ड्राफ्ट 76 (hybi_legacy) और RFC6455 (hybi/hybi_header) के लिए एक है। फ्रेम प्रोसेसर एक एसटीएल स्ट्रीम से पढ़ते हैं जिसे आप अपने नेटवर्क कोड या किसी अन्य स्रोत से भर सकते हैं।

यदि आपके पास कोई और विशिष्ट प्रश्न हैं तो मुझे जिथब पर एक पीएम भेजें।

+5

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

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