如何获取由js在我的websocket中传递的动态网址,我是否需要通过参数将其传递给pc.connect()类,该类今天什么都不会收到,但将来会收到?
weboocket:
class MyWebSocketHandler(websocket.WebSocketHandler):
def allow_draft76(self):
# for iOS 5.0 Safari
return True
def check_origin(self, origin):
return True
def open(self, *args, **kwargs):
self.application.pc.add_event_listener(self)
print ("WebSocket opened")
def on_close(self):
print ("WebSocket closed")
self.application.pc.remove_event_listener(self)
def main():
parse_command_line()
aplication = tornado.web.Application([
(r'.*', MyWebSocketHandler)
])
pc = PikaClient(io_loop)
aplication.pc = pc
aplication.pc.connect()
aplication.listen(8081)
io_loop.start()
if __name__ == '__main__':
main()
html:
const websocket = new WebSocket('ws://192.168.99.100:8081/${this.$route.params.uri}')
答案 0 :(得分:0)
在应用程序中,如下定义路由:
(r'/(.*)', MyWebSocketHandler),
括号中定义了一个捕获组,该捕获组将作为open()
传递给args[0]
。
还要注意,allow_draft76
方法在Tornado 4.0中已删除,因此不再有任何理由在处理程序中包括此方法。