首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >websockets的基本身份验证

websockets的基本身份验证
EN

Stack Overflow用户
提问于 2011-07-16 10:53:16
回答 5查看 32.3K关注 0票数 14

当我使用chrome创建一个新的websocket时

代码语言:javascript
复制
new WebSocket('ws://gert:passwd@127.0.0.1:8001/dbname')

nodejs服务器接收

代码语言:javascript
复制
GET /dbname HTTP/1.1
Upgrade: WebSocket
Connection: Upgrade
Host: 127.0.0.1:8001
Origin: http://127.0.0.1:8000
Sec-WebSocket-Key1: '  5 5) 4 1e   a9 9 0 19
Sec-WebSocket-Key2: 3000909100 Q

如何检索gert和passwd?

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2011-07-16 16:55:20

看起来chrome实际上并没有在ws头中传递基本的auth数据。为什么不把login/pwd作为url查询字符串的一部分呢?(并使用安全wss)

票数 10
EN

Stack Overflow用户

发布于 2011-10-12 05:15:58

The Authorization header was not mentioned in the WebSocket spec until Hybi-13。Chrome实现了hybi-00和hybi-10 (取决于Chrome的版本),所以它不是实现的要求。

既然在协议中提到了它,也许Google会实现它,但我不能保证将"user:pass@...“在URI中,可能需要更改浏览器的WebSocket应用程序接口。

票数 7
EN

Stack Overflow用户

发布于 2014-10-17 16:38:55

Chrome没有将authorization头作为升级请求的一部分传递。这会导致身份验证失败。

这个问题似乎在最新的铬Here中得到了解决。

票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6714966

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档