Tornado websocket server 跨域问题

pylist 397

websocket 协议是可以跨域的,但存在安全问题,Tornado 4.0+ 可通过重写check_origin 函数允许跨域。

class WebSocketHandler(tornado.websocket.WebSocketHandler):

    def check_origin(self, origin):
        return True

    def open(self):
        self.write_message('x') 

指定允许的域名:

def check_origin(self, origin):
    parsed_origin = urllib.parse.urlparse(origin)
    return parsed_origin.netloc.endswith(".yourdomain.com")
登录发表评论

桂公网安备 45122402000014号