2012-02-02 8 views
35

के साथ सर्वर से उपयोगकर्ता को सूचनाएं पुश करें: क्या सर्वर से डेटा को उपयोगकर्ता सत्र में लॉग इन करने का कोई तरीका है जिसके बिना उपयोगकर्ता को HTTP अनुरोध करने की आवश्यकता है?PHP/जावास्क्रिप्ट

लांग (ईआर): मैं एक एचटीएमएल 5 आवेदन का निर्माण कर रहा हूँ एक अपाचे/PHP/MySQL सर्वर पर, कि (क PhoneGap आवेदन के माध्यम से या शायद) मोबाइल उपकरणों के उपयोगकर्ताओं के लिए कार्य किया जा सकता है।

मैं उपयोगकर्ता जानते नई जानकारी आवेदन से उपलब्ध है जब वहाँ सर्वर के लिए एक कॉल निष्पादित करने के लिए है कि उपयोगकर्ता के लिए मजबूर कर, या AJAX कॉल की आवश्यकता द्वारा अत्यधिक डेटा शुल्क अर्जित किए बिना, यह बताने के लिए चाहते हैं (हाँ मैं जानता हूँ कि यह हो सकता एक बाइट कुकी की जांच करें, लेकिन मैं इसे शून्य बना दूंगा)।

इसका एक अच्छा उदाहरण एक उपयोगकर्ता से दूसरे उपयोगकर्ता को सबमिट करने पर दो उपयोगकर्ताओं के बीच चैट संदेश भेज देगा।

+0

मैं प्राप्त किया गया फीडबैक के लिए वेबसॉकेट के धन्यवाद में अपना शोध कर रहा हूं। मुझे इस पर एक शानदार ट्यूटोरियल मिला: http://net.tutsplus.com/tutorials/javascript-ajax/start-using-html5-websockets- आज – Collius

+0

यह क्यों बंद हुआ? यह एक असली सवाल है ... –

+1

यह एक असली सवाल है, लेकिन एक जो व्यापक है और स्पष्ट नहीं है।एक 'स्पष्ट' जवाब होगा, "संभोग", निश्चित रूप से, सर्वर का उपयोग किए बिना सर्वर से डेटा को धक्का देने के तरीके हैं, उदाहरण के लिए किसी अन्य प्रोटोकॉल का उपयोग करना। समस्या 'अत्यधिक डेटा शुल्क' प्रतीत होती है, लेकिन एक और प्रोटोकॉल इसे कैसे ठीक करेगा? ऐसा लगता है कि 'सॉकेट' जवाब है, लेकिन यह मेरी राय में प्रश्न की सामग्री के आधार पर सुझाव देने के लिए एक वास्तविक स्पष्ट बात नहीं है .. शायद अगर प्रश्न थोड़ा सा स्पष्ट किया गया है? – Nanne

उत्तर

28

आधुनिक ब्राउज़रों में, Websockets या पुराने ब्राउज़र में, "long polling"। ऐसे पुस्तकालय भी हैं जो इनमें से कुछ को अमूर्त कर सकते हैं (जैसे comet)।

अब उपयोग में एक बहुत ही आम लाइब्रेरी socket.io है जो उपलब्ध होने पर वेबस्केट्स का उपयोग करके उपलब्ध सर्वोत्तम तकनीक से स्वचालित रूप से कनेक्ट हो जाती है और यदि उपलब्ध नहीं हो तो लंबी तकनीक जैसे अन्य प्रौद्योगिकियों पर वापस आती है।

कुछ अन्य संदर्भ:

How do I implement basic "Long Polling"?

COMET (server push to client) on iPhone

More on Long Polling

Is there a difference between long-polling and using Comet

Pushing the web with websockets

Oh HTML5, Push Data to my Mobile

+1

शानदार मददगार। मैं Websockets ASAP पर अपना होमवर्क करना शुरू कर दूंगा। – Collius

+0

जोड़ा गया socket.io संदर्भ जो अब बहुत उपयोगी है। – jfriend00

4

मैं Socket.io

की सलाह देते हैं यह लाभ उठाता है

WebSocket, FlashSocket, HTML फ़ाइल (IE के लिए), एक्सएचआर लंबी मतदान, JSONP-मतदान

यह Node.js साथ है जिसका अर्थ है कि यह गैर-अवरुद्ध प्रकृति पर है।

वास्तविक समय सुविधा में, संगामिति तो Node.js और Socket.io के गैर अवरुद्ध प्रकृति में मदद मिलेगी आप

+0

मैं नोड.जेएस से सावधान हूं, लेकिन यह बहुत उपयोगी है। धन्यवाद! – Collius

1

ScaleDrone आप एक PHP API client का उपयोग कर जावास्क्रिप्ट को PHP से धक्का देता है एक बड़ा मुद्दा

है।