gpt4 book ai didi

node.js - 端口 80 上的 SocketIO 与 Express 一起

转载 作者:太空宇宙 更新时间:2023-11-03 23:06:37 26 4
gpt4 key购买 nike

我的 ExpressJS 应用程序与 Socket.io 一起运行,由于 SIO 较高端口的防火墙问题,我想切换到两者都在端口 80 上运行。

找到这个small article在我的开发机器上,它看起来运行良好。

我的问题是,这样做真的好吗?这是一个好的做法吗?如果不是为什么?

请指教。

最佳答案

在同一端口上运行 socket.io 和 Web 服务器是绝对有意义的。

webSocket 协议(protocol)(socket.io 所基于的)是专门为此设计的,它是 socket.io 使用的主要方式,原因有很多,包括同源权限以及端口 80 的客户端和服务器防火墙路由。

如果您没有意识到,每个socket.io连接都以对特定路由的HTTP请求开始,然后一旦客户端和服务器之间的初始握手得到确认,协议(protocol)就会从HTTP“升级”到webSocket。由于所有 socket.io 连接都通过非常特定的路由进行连接,因此所有其他 HTTP 连接都可以轻松分离出来,并由 Web 服务器将其视为常规 Web 请求。

关于node.js - 端口 80 上的 SocketIO 与 Express 一起,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33202671/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com