공부기록/Node.js
[CORS에러] Access to XMLHttpRequest at 'http://localhost:8080/socket.io/?EIO=4&transport=polling&t=OWDX8nq' from origin 'http://localhost:3000' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resou..
Jenner
2023. 5. 12. 10:22
socket.io 로 서버와 클라이언트를 연결하려는 도중 위와같은 CORS에러가 생겼다.
에러난 코드
mongoose
.connect(MONGODB_URI)
.then((result) => {
const server = app.listen(8080);
const io = require("socket.io")(server);
io.on("connection", (socket) => {
console.log("Client connected");
});
})
.catch((err) => console.log(err));
해결된 코드
서버쪽 socket을 연결하는 요청에 아래와 같이 코드를 작성해 주면 CORS에러가 해결된다.
mongoose
.connect(MONGODB_URI)
.then((result) => {
const server = app.listen(8080);
const io = require("socket.io")(server, { cors: { origin: "*" } });
io.on("connection", (socket) => {
console.log("Client connected");
});
})
.catch((err) => console.log(err));