使用
JavaScript WebSocket如何将event.data传递给onMessage函数?
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; }
任何帮助,将不胜感激.
解决方法
如果你的服务器是python龙卷风
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)); }
你应该在控制台中看到json