在Angular应用无法连接到Node.js/Socket.io后端的CORS问题时,可以通过以下步骤解决:
npm install cors --save
const express = require('express');
const cors = require('cors');
const app = express();
app.use(cors());
import { io } from 'socket.io-client';
const socket = io('http://localhost:3000', {
withCredentials: true, // 启用CORS
});
proxy.conf.json
文件,并添加以下内容:{
"/api": {
"target": "http://localhost:3000",
"secure": false
}
}
package.json
文件中添加一个启动脚本,以使用代理配置:"scripts": {
"start": "ng serve --proxy-config proxy.conf.json"
}
import { io } from 'socket.io-client';
const socket = io('/api', {
withCredentials: true, // 启用CORS
});
这些步骤将配置Node.js后端允许来自Angular应用的跨域请求,并配置Angular应用使用代理配置来解决跨域问题。