2010-07-19 25 views
12

क्या सर्वर के उपयोग के बिना ब्राउज़र (प्रत्यक्ष पीयर-टू-पीयर) के उपयोग के दौरान लैन/वैन पर एक दूसरे से संवाद करने के लिए ब्राउज़र का कोई संभावित तरीका है?ब्राउज़र के बिना ब्राउज़र संचार के ब्राउज़र?

+0

उन सभी को यह पूछने में दिलचस्पी है कि क्यों, मैं कुछ भी डाउनलोड किए बिना लैन पर सरल/त्वरित फ़ाइल स्थानांतरण के लिए कोई समाधान था या नहीं। –

उत्तर

5

ऐसा लगता है कि क्षितिज पर आशा हो सकता है: http://www.w3.org/TR/webrtc/

+0

उदाहरण के रूप में: https://github.com/cowbell/sharedrop यह LAN के माध्यम से स्थानांतरित करने के लिए HTML5 और WebRTC का उपयोग करता है –

0

संक्षिप्त उत्तर: नहीं। संभव नहीं।

लंबा उत्तर: आप एक हस्ताक्षरित जावा एप्लेट लिख सकते हैं जो प्रत्येक ब्राउज़र में एक वेब सर्वर लागू करता है। फिर ब्राउज़र "ए" ब्राउज़र "बी" एप्लेट से बात कर सकता है ('उस टैब को बंद न करें!)। इसके बाद आप इस तरह से अन्य ब्राउज़र स्थिति तक सीमित पहुंच प्राप्त करेंगे।

इसी तरह, आप एक प्लगइन/एडन लिख सकते हैं जो एक ही चीज़ को पूरा कर सकता है।

असली सवाल यह है कि आप ऐसा क्यों करना चाहते हैं? आप क्या खत्म करने की कोशिश कर रहे हैं? उस प्रश्न का उत्तर दें और हम समाधान के साथ आने में सक्षम हो सकते हैं।

0

हां, वे कर सकते थे, लेकिन उन्हें कनेक्शन स्थापित करने के लिए डिज़ाइन करने की आवश्यकता होगी (या एक मॉड्यूल होने की आवश्यकता होगी)।

यहां तक ​​कि अगर मैं सोच रहा हूँ कारण है कि वे करने के लिए .. की आवश्यकता होगी

1

IIRC, ओपेरा कि सिर्फ इतना है कि कार्यक्षमता के लिए एक वेब सर्वर एम्बेडेड अपने ब्राउज़र के अलावा किसी तरह का जारी किया गया:

http://unite.opera.com/

यकीन नहीं है कि यह वास्तव में कहीं भी चला गया, लेकिन मुझे लगता है कि इसका समय आ जाएगा।

+0

+1 दिलचस्प। लेकिन यह प्रत्यक्ष कनेक्शन नहीं बनाता है, यह एनएटी प्रतिबंधों के लिए ओपेरा सर्वर का उपयोग करता है (वास्तव में ऐसा करने का एकमात्र स्मार्ट तरीका) http://www.jorgemarsal.com/blog/2009/06/16/how- करता है-ओपेरा-एकजुट-फ़ाइल-साझाकरण-सेवा-कार्य/ –

+0

आह, मैं देखता हूं। मैंने माना था कि यह स्थानीय ग्राहकों को हल करने के लिए ज़ीरोकॉन्फ़/बोनजोर का उपयोग कर रहा था। ओह ठीक है, शायद भविष्य में कुछ दिन यह node.client.js + कोच डीबी या कुछ मजेदार के साथ किया जाएगा। – guns

1

शुद्ध HTML/जावास्क्रिप्ट में? शायद ऩही।

मेरे ज्ञान के लिए, मूल जावास्क्रिप्ट में कनेक्शन सुनने के लिए कोई अच्छा तरीका नहीं है। HTTP में, क्लाइंट एक बंदरगाह खोलता है, एक अनुरोध भेजता है, और एक प्रतिक्रिया प्राप्त करता है। आप अनुरोध करने के लिए एक्सएचटीटीपी या इसी तरह के वर्ग का उपयोग कर सकते हैं लेकिन अनुरोध के लिए सुनेंगे कि दूसरे छोर पर एक सर्वर बनाने के लिए एक सामान्य वेब पेज के भीतर कोई अच्छा तरीका नहीं है।

यह देखते हुए कि, मुझे पता है कि फ्लैश एक सॉकेट लाइब्रेरी प्रदान करता है जो आपको कनेक्शन सुनने की अनुमति देता है। (मुझे लगता है कि सिल्वरलाइट भी यह करता है, हालांकि मैंने इसका शोध नहीं किया है।) यदि आप इनमें से किसी भी तकनीक का उपयोग करके ऑब्जेक्ट बनाना चाहते हैं, तो आप किसी भी क्लाइंट से कनेक्शन अनुरोधों को सुन सकते हैं (मानते हैं कि आप फ़ायरवॉल के पीछे नहीं हैं या कुछ अन्य कनेक्शन-फ़िल्टरिंग डिवाइस), खुली सॉकेट बनाए रखें और जो भी आप तार पर चाहते हैं उसे भेजें।

सारांश:

  1. शायद जावास्क्रिप्ट/HTML/CSS में ऐसा नहीं कर सकते।

  2. लेकिन, आप इसे फ्लैश या सिल्वरलाइट में खींच सकते हैं।

0

फ़्लैश - स्ट्रैटस। नवीनतम फ्लैश में नई चीजें जो पी 2 पी कनेक्शन प्रदान करती हैं।

0

ब्राउज़रों फायरवॉल आप NAT ट्रेवरसल का उपयोग कर देख सकते हैं के पीछे हैं। ऐसा करने के लिए वेबआरटीसी द्वारा STUN और TURN जैसे प्रोटोकॉल का उपयोग किया जाता है। इस वेबसाइट में कुछ अच्छे उदाहरण हैं/ट्यूटोरियल HTML5 Rocks

0

हाँ आप AJAX कॉल के साथ http://httprelay.io आज़मा सकते हैं। यह इतना आसान है:

* Send data: POST https://httprelay.io/link/your_secret_channel_id 
* Receive data GET https://httprelay.io/link/your_secret_channel_id 
संबंधित मुद्दे