连接到不同域的套接字时发生CORS错误

时间:2019-05-04 11:57:08

标签: node.js vue.js socket.io cors

我正在创建虚拟项目,其后端为 node ,前端为 VUE

我正在尝试通过套接字连接它们

这是我编写的代码

为Vue服务

var socket = io.connect('http://localhost:3000');
export default {
 newUser:(name)=>{
     socket.emit('newuser',name)
 }
} 

在节点中

var express = require("express");
var app = express();
var cors=require('cors');
app.use(cors());
    // var whitelist = [
    //     'http://127.0.0.1:8080', 'http://localhost:8080'
    // ];

// var corsOptions = {
//     origin: function (origin, callback) {
//         var originIsWhitelisted = whitelist.indexOf(origin) !== -1;
//         callback(null, originIsWhitelisted);
//     },
//     credentials: true
// };

// app.use(cors(corsOptions))

// app.use(function (req, res, next) {
//     res.header("Access-Control-Allow-Origin", "*");
//     res.header("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept");
//     next();
// });
var server = require('http').createServer(app);
var io = require('socket.io').listen(server);

server.listen( 3000, () => {
    console.log("listing")
});

io.sockets.on('connection', function (socket) {
    socket.on('newuser', function (data) {
        console.log(data)
    })
})

我收到CORS错误

enter image description here

我试图解决这个问题,允许在节点中使用cors并使用插件,但这不起作用

请给我建议一种解决此错误的方法

0 个答案:

没有答案