我正在尝试通过 websocket 连接(我正在使用 python websocket 客户端)发送会话 id(我在对 http 服务器进行身份验证后得到它),我需要将它作为标头参数传递,其中服务器(Tornado Websocket 服务器)将读取所有标题并检查它们。
问题是:如何添加标头以使用现有的客户端 python Websocket 实现之一,我发现它们都不能做到这一点,或者我是否首先采用了错误的方法进行身份验证?
-- 更新 --,下面是我使用的代码模板:
def on_message(ws, message):
print 'message received ..'
print message
def on_error(ws, error):
print 'error happened .. '
print error
def on_close(ws):
print "### closed ###"
def on_open(ws):
print 'Opening Websocket connection to the server ... '
## This session_key I got, need to be passed over websocket header isntad of ws.send.
ws.send(session_key)
if __name__ == "__main__":
websocket.enableTrace(True)
ws = websocket.WebSocketApp("ws://localhost:9999/track",
on_open = on_open,
on_message = on_message,
on_error = on_error,
on_close = on_close,
)
ws.on_open = on_open
ws.run_forever()