使用Web Socket Client API

时间:2018-05-09 10:58:15

标签: python python-asyncio libwebsockets

我正在尝试使用Web套接字客户端API建立连接。 为了建立连接,一个"播放会话"需要传递cookie以验证用户。

以下是我的代码:

async def streaming_data(url, play_session):
    try:
        async with websockets.connect(url) as websocket:
            response = await websocket.recv()
            data = reponse.read()
    except Exception as e:
        print('Error in making the Websocket Connection!!')
        print(e.args)

    print(data) 

注意:Play Session是cookie。

我收到错误:"状态代码不在101:403" 我正在使用websockets库进行连接。

我是初学者,所以任何帮助都会非常感激。

1 个答案:

答案 0 :(得分:1)

要在连接到websocket服务器时发送cookie,您必须将cookie HTTP标头传递给connect()函数。

您尚未在play_session变量中指定数据格式。因此,我们假设您需要发送名称为play_session且值为100的Cookie:

cookie = 'play_session=100'
headers = {'Cookie': cookie}

async with websockets.connect(url, extra_headers=headers) as websocket:
    ...