kan*_*aka 50
我读过WebSockets,但它们似乎不是纯粹的"套接字",因为它们上面有一个应用程序层协议.
[websocket协议]实现起来如此简单,以至于"几乎"是"套接字"吗?
直接从浏览器允许常规套接字连接永远不会发生,因为它会带来巨大的风险.WebSockets与您将获得的浏览器中的原始套接字非常接近.初始WebSockets握手类似于HTTP握手(允许Web服务器代理/桥接它)并添加CORS类型安全性.此外,WebSockets是基于消息的传输(而不是作为原始TCP的流传输),这是在每个消息帧上使用双字节头完成的.
即使闪存也无法完全建立原始TCP连接.闪存套接字还添加了CORS安全性,但闪存套接字连接不是带内握手,而是与目标服务器上的端口843建立连接以请求安全策略文件.
有没有办法从网络浏览器进行纯套接字连接,搞活网页?
是的,您可以使用我的websockify网桥/代理,它允许支持WebSockets的浏览器通过websockify直接连接到TCP套接字.
但是关于HTML5,如果它们不是套接字,为什么它们被称为WebSockets?
WebSockets是基于TCP套接字构建的传输.握手之后,开销非常小(通常只有两个字节的标头).