如何在下面的节点 js socket io 代码中添加 cors

Posted

技术标签:

【中文标题】如何在下面的节点 js socket io 代码中添加 cors【英文标题】:how to add cors in the below node js socket io code 【发布时间】:2021-10-16 09:58:46 【问题描述】:

我正在尝试从客户端添加 cors 来源,因为它阻止了我的请求,我尝试执行以下命令,但它显示它不是一个函数,你能建议一种将跨来源策略添加到我的方法吗?代码

const axios = require('axios');
const express = require('express');
const http = require('http');
const app = express();
const server = http.createServer(app);
const socket = require('socket.io');
const io = socket(server)(8000, 
cors: 
    origin: ['http://localhost:3000'],
,
);

.
.
.
.
.

server.listen(8000, () => console.log('server is running on port 8000'));

【问题讨论】:

【参考方案1】:

你应该这样做:

const io = require("socket.io")(httpServer, 
  cors: 
    origin: "https://example.com",
    methods: ["GET", "POST"],
  
);

您不需要传递端口,而是提供httpserver。有关更多详细信息,请查看Socket.io 文档。

【讨论】:

以上是关于如何在下面的节点 js socket io 代码中添加 cors的主要内容,如果未能解决你的问题,请参考以下文章

如何在 node.js 中以角度使用 socket.io?

js节点-socket.io聊天修改

如何使用socket.io在节点js的右侧显示发送消息并在左侧显示接收消息

节点 js - Socket.io-client 未连接到 socket.io 服务器

使用带有webpack的socket.io连接到GDAX websocket api

Socket io节点js连接问题