Websocket 如何在autobahn客户端工具中添加基本身份验证标头

Websocket 如何在autobahn客户端工具中添加基本身份验证标头,websocket,autobahn,Websocket,Autobahn,我想在autobahn客户端工具中添加基本身份验证标头。我怎样才能做到这一点 当前请求 请求我需要: 注意:我不希望autobahn服务器对客户端进行身份验证。 我的场景是高速公路客户端-->我的服务器-->高速公路服务器。 我的服务器将负责提取授权标头,然后调用autobahn服务器。我已经实现了为AutobahnPython客户端和服务器发送自定义HTTP标头的选项。您需要使用GitHub(master branch)上最新的AutobahnPython 在构建WebSocketClient

我想在autobahn客户端工具中添加基本身份验证标头。我怎样才能做到这一点

当前请求 请求我需要: 注意:我不希望autobahn服务器对客户端进行身份验证。
我的场景是高速公路客户端-->我的服务器-->高速公路服务器。

我的服务器将负责提取授权标头,然后调用autobahn服务器。

我已经实现了为AutobahnPython客户端和服务器发送自定义HTTP标头的选项。您需要使用GitHub(master branch)上最新的AutobahnPython

在构建
WebSocketClientFactory
期间,客户端可以通过提供
headers
关键字参数发送头,或者通过
setSessionParameters
设置头

服务器可以发送类似于客户端的头,并在从
onConnect
返回时另外指定头

这是一份完整的


免责声明:我是Autobahn的原始作者,为Tavendo工作。

谢谢Oberstet。我已经用master branch更新了我的代码。在您的客户机代码(client.py)中,我添加了标题factory=WebSocketClientFactory(“ws://192.168.2.138:8081”,debug=True,headers={“Authorization:Basic cmljazpyaWNrMTIz”}),但当factory=WebSocketClientFactory(“ws://192.168.2.138:8081”,debug=True,headers={“Authorization:Basic cmljazpyaWNrMTIz”})时,我得到了错误信息TypeError:\uuuu init\uuuuuuuuuu()得到一个意外的关键字参数“headers”我做错了什么吗?请再次从GitHub获取最新的代码,不要忘记
python setup.py安装
。我还添加了一个完整的示例:您有来自HTML的autobahn JS客户端的示例吗?@RafaelFreitas for autobahn JS您可以使用
headers
选项在初始化新连接时传递自定义头。例如:
newautobahn.Connection({headers:{…},..options,})
GET / HTTP/1.1  
User-Agent: AutobahnPython/0.5.2  
Host: 10.35.34.172:9000  
Upgrade: WebSocket  
Connection: Upgrade  
Sec-WebSocket-Key: 1U4OeBs60qkmk1V/8voLOw==  
Sec-WebSocket-Version: 8  
GET / HTTP/1.1  
User-Agent: AutobahnPython/0.5.2  
Host: 10.35.34.172:9000  
Authorization: Basic TXlMb2NhdGlvbkFwcDpNeUxvY2F0aW9uQXBwMTIz  
Upgrade: WebSocket  
Connection: Upgrade  
Sec-WebSocket-Key: 1U4OeBs60qkmk1V/8voLOw==  
Sec-WebSocket-Version: 8