Live Server与原网站Origin不同是否会影响Socket.IO消息发送?
问题描述
我希望连接 wss://ws2.qxbroker.com/socket.io/ 服务器,我的HTML代码如下:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Socket IO</title> </head> <body> <h1 id="Get Response From The Server">---</h1> <script src="https://cdnjs.cloudflare.com/ajax/libs/socket.io/2.4.0/socket.io.js"></script> <script> const socket = io('wss://ws2.qxbroker.com/socket.io/',{transports:['websocket']}); </script> </body> </html>
使用Live Server运行时,开发者工具中显示的Origin与直接访问qxbroker.com官网时的Origin不同,两种情况均能获取session id及ping/pong间隔(ms),我想询问这种Origin差异是否会对向该服务器发送消息的连接产生负面影响。
回答
- 当前能正常获取session id和ping/pong响应,说明服务器目前没有对Origin做严格拦截,或者你的Live Server对应的Origin在服务器的允许列表里,暂时不会影响消息发送。
- 存在潜在风险:如果服务器后续收紧CORS策略或添加Origin校验规则,你的非官网Origin可能会被拒绝建立连接,或者无法正常发送/接收消息。
- 如果是正式项目使用,建议尽量保持和官网一致的Origin,避免后续因策略变更导致连接失效;如果只是测试用途,当前能正常通信就没问题,但要留意服务器的规则变化。
- 另外还要注意:如果服务器后续要求身份验证(比如token校验),Origin差异可能会和身份权限结合起来,影响消息发送的权限,这一点也需要关注。
内容的提问来源于stack exchange,提问作者Bombosonic
相关产品推荐
相关产品推荐

