如何在autobahn客户端工具中添加基本auth标头

时间:2013-04-24 09:06:04

标签: websocket autobahn

我想在高速公路客户端工具中添加基本的auth标头。我怎样才能做到这一点?

当前请求

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  

注意:我不希望高速公路服务器对客户端进行身份验证 我的场景是高速公路客户端 - >我的服务器 - >高速公路服务器 我的服务器将负责提取授权标头,然后调用高速公路服务器。

1 个答案:

答案 0 :(得分:6)

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

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

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

以下是完整的example

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