我有一个名为app.py的文件。有一个名为 EchoWebSocket 的类。在 EchoWebSocket 下,我编写了一个名为 on_message 的函数。我从javascript前端获取了类似JSON的数据,message = {type:'login',name:'xyz'}。我宣布了一个名为 data 的全局变量。现在我想解析消息并通过异常处理块将其存储在名为 data 的全局变量中。但我收到一个名为** raise NotImplementedError **的错误。下面是我的python代码,我是这些技术的新手,请帮我解决这些问题。
/app.py
class EchoWebSocket(WebSocketHandler):
clients = []
def open(self):
logging.info('WebSocket opened from %s', self.request.remote_ip)
EchoWebSocket.clients.append(self)
def on_message(self, message):
#logging.info('got message from %s: %s', self.request.remote_ip, message)
logging.info('message %s:', message)
global data
try:
data = JSON.parse(message)
except MyError as e:
logging.info("Invalid JSON")
data = {}
/错误
[I 170404 11:35:30 web:1971] 304 GET / (127.0.0.1) 1.58ms
[I 170404 11:35:30 web:1971] 304 GET /static/js/client.js (127.0.0.1) 3.28ms
[E 170404 11:35:34 websocket:415] Uncaught exception in /ws
Traceback (most recent call last):
File "/usr/local/python3.6/lib/python3.6/site-packages/tornado/websocket.py", line 412, in _run_callback
callback(*args, **kwargs)
File "/usr/local/python3.6/lib/python3.6/site-packages/tornado/websocket.py", line 255, in on_message
raise NotImplementedError
NotImplementedError
答案 0 :(得分:0)
可能是你的子类
中的桅杆实现on_close方法def on_close(self):
print("WebSocket closed")