2013-03-20 5 views
7

जावास्क्रिप्ट वेबसाकेट का उपयोग event.dataonMessage फ़ंक्शन से कैसे पास करें?जावास्क्रिप्ट websocket onmessage event.data

var eventData = EventRequest("text"); 


    ..... codes ..... 


EventRequest = function (text) 
{ 
    var socket = new WebSocket ('ws://localhost:8080/'); 
    websocket.onopen = function(evt) { onOpen(evt); }; 
    websocket.onmessage = function(evt) { onMessage(evt); }; 

function onOpen (evt) 
{ 
    socket.send("text"); 
} 

function onMessage (evt) 
{ 
    alert (evt.data); 
    return evt.data; 
} 
}; 

मैं evt.data बाहर पारित करने के लिए अलग अलग तरीकों से कोशिश की, लेकिन मैं करने में सक्षम नहीं किया गया है। मैं सही evt.data डेटा देख सकता हूं। मैं सिर्फ onMessage फ़ंक्शन से डेटा पास नहीं कर सकता।

मैं

function wcConnection(){ 
    this.dataInput = ''; 
} 

की कोशिश की onMessage समारोह के अंदर, मैं जोड़ा

function onMessage (evt) 
{ 
    alert (evt.data); 
    this.dataInput = evt.data; 
} 

किसी भी मदद की सराहना की जाएगी।

+0

क्या आप मूलभूत कर सकते हैं? http://www.tutorialspoint.com/html5/html5_websocket.htm उस पृष्ठ पर पसंद है? –

उत्तर

2

आप सर्वर अजगर बवंडर

def on_message(self, message): 
     t = json.dumps(['foo', {'bar': ('baz', None, 1.0, 2)}]) 
     self.write_message(t) 

है अपने ग्राहक में, संदेश को पुनः प्राप्त करने, तुम कर सकते हो

ws.onmessage = function (evt) { 
    console.log(JSON.parse(event.data)); 
} 

आप कंसोल

2

क्यों कर रहे हैं में json देखना चाहिए आप websocket.onmessage फ़ंक्शन पर मान वापस कर रहे हैं? यह वह कार्य है जहां आपको वह मान मिला है। यदि आप किसी अन्य फ़ंक्शन पर मान पास करना चाहते हैं तो ईवेंट ऑब्जेक्ट को उस फ़ंक्शन पर पास करें और "evt.data" का उपयोग करके इसे एक्सेस करें।

websocket.onmessage = function(evt) { responseData(evt); }; 
function responseData(evt) { 
    /* Here is your data, Do you what you want! */ 
    console.log(JSON.parse(evt.data)); 
} 
संबंधित मुद्दे