socket.io跨域问题

简介: socket.io跨域问题

问题背景简介



linux服务器上,nginx代理80端口,指向打包好的项目dist文件夹下的入口文件index.html,而用nodejs的express编写的服务器js运行在3000端口上,也就是包括socket.io的包也在3000端口上,客户端也就是其他主机访问我linux的端口80进入我的index.html,其中用script引用3000端口包时:

<script src="http://xx.xxx.xxx.xx:3000/socket.io/socket.io.js"></script>

会存在80端口到3000端口同ip不同端口的跨域问题

解决



就是在创建io的时候后面加上{ cors: true }:

var io = require('socket.io')(http,{ cors: true })

以上是CommonJS的引入方式,顺便说一下ES6模块如何引入socket.io:

import { Server } from "socket.io";
const io = new Server(http,{ cors: true });


相关文章
|
机器学习/深度学习 网络架构 人工智能
AI - MoE(Mixture-of-Experts)结构
AI - MoE(Mixture-of-Experts)结构
580 1
|
API 开发工具 Android开发
解决 Android App 上架 Google play后 ,签名变更,第三方sdk无法登录
解决 Android App 上架 Google play后 ,签名变更,第三方sdk无法登录
598 0
|
JavaScript 前端开发
layui实现点击按钮全屏
layui实现点击按钮全屏
624 0
|
Java Maven
IDEA 2021 整合 SSM 配置离线 Maven 3.8.1 报错大全 Since Maven 3.8.1 http repositories are blocked.
IDEA 2021 整合 SSM 配置离线 Maven 3.8.1 报错大全 Since Maven 3.8.1 http repositories are blocked.
7619 0
IDEA 2021 整合 SSM 配置离线 Maven 3.8.1 报错大全 Since Maven 3.8.1 http repositories are blocked.
|
4月前
|
SQL 安全 Linux
Metasploit Pro 4.22.8-2025073001 (Linux, Windows) - 专业渗透测试框架
Metasploit Pro 4.22.8-2025073001 (Linux, Windows) - 专业渗透测试框架
171 0
|
存储 NoSQL 关系型数据库
【赵渝强老师】MongoDB的存储结构
MongoDB 是一个可移植的 NoSQL 数据库,支持跨平台运行。其逻辑存储结构包括数据库、集合和文档,而物理存储结构则由命名空间文件、数据文件和日志文件组成。视频讲解和示意图进一步解释了这些概念。
395 5
|
移动开发 JavaScript 网络协议
SpringBoot:Netty-SocketIO + VUE:SocketIO实现前后端实时双向通信
SpringBoot:Netty-SocketIO + VUE:SocketIO实现前后端实时双向通信
974 0
|
Web App开发 存储 监控
Node.js中的内存泄漏
【8月更文挑战第31天】Node.js中的内存泄漏
361 1
|
缓存 NoSQL Java
【Azure Redis 缓存】云服务Worker Role中调用StackExchange.Redis,遇见莫名异常(RedisConnectionException: UnableToConnect on xxx 或 No connection is available to service this operation: xxx)
【Azure Redis 缓存】云服务Worker Role中调用StackExchange.Redis,遇见莫名异常(RedisConnectionException: UnableToConnect on xxx 或 No connection is available to service this operation: xxx)
334 0
webpack——You may need an appropriate loader to handle this file type, currently no loaders are configured to process this file.
webpack——You may need an appropriate loader to handle this file type, currently no loaders are configured to process this file.
2349 0