面对 CORS 政策或 404 未找到 vuejs 和 socket.io with npm 运行 serve

Facing CORS policy or 404 not found vuejs and socket.io with npm run serve

我实际上是在我的本地机器上开发。

我在本地计算机上有一个简单的 socket.io 服务器 运行ning:

const io = require('socket.io')();
io.listen(3000);

在我的 Vue-js 应用程序上,我想连接一个 socket.io-client

import socketio from 'socket.io-client'
const io = socketio('http://localhost');

我运行我发球:npm run serve

在我的控制台中写着:

Access to XMLHttpRequest at 'http://127.0.0.1:8080/socket.io/?EIO=3&transport=polling&t=M_JIr4_' from origin 'http://localhost:8080' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.

我试过这样设置我的 vue.config.js 文件:

// vue.config.js
module.exports = {
    // options...
    devServer: {
        proxy: 'http://localhost/',
    }
  }

我的客户是这样的:

import socketio from 'socket.io-client'
const io = socketio('http://localhost:8080');

它删除了 CORS 但后来我在控制台中得到了这个:

GET http://localhost:8080/socket.io/?EIO=3&transport=polling&t=M_JLsr5 404 (Not Found)

有没有办法让它在本地主机上运行?

PS:我用@vue/cli

生成了我的项目

如果它可以帮助别人:

我重新启动了我的电脑,删除了 vue.config.js 并替换了

import socketio from 'socket.io-client'
const io = socketio('http://localhost');

来自

import socketio from 'socket.io-client'
const io = socketio('http://localhost:3000');

看起来它解决了我的问题。