아래는 평소 node.js에서 cors를 해결하는 방식이다.
app.use(cors(corsOptions));
하지만, Node 라이브러리 중 "Cors"라이브러리는 Socket.io에서 발생한 Cors를 해결할 수 없다.
(Server-Side) 그래서 아래와 같이, Socket.io 코드로 명시적으로 작성해주어야 한다.
var socket = io.connect(`채팅서버 주소`,{
cors: { origin: '*' }
});
(Client-Side) 혹시나 다른 컴포넌트에서 소켓이 쓰이고 있지는 않은 지, 확인해보자.
필자 같은 경우에는, 서버단에서 Cors문제는 해결이 됬는데, 채팅이 안되거나 2분 뒤에 도착하는 상황이 벌어졌었다.
파일 하나하나를 뒤져보니, 초반에 소켓을 연결하려고 미리 만들어둔 유틸함수를 까먹고, 또 소켓함수를 만들어서 벌어진 일이였다.
'트러블슈팅' 카테고리의 다른 글
[ TypeScript ] "No overload matches this call" (0) | 2023.02.01 |
---|---|
[ TypeScript ] import로 이미지 불러올 때 (1) | 2023.02.01 |
socket.io 서버 부하 이슈 (0) | 2022.11.17 |
Uncaught TypeError: Cannot assign to read only property '0' of object '[object Array]' at Array.sort (<anonymous>) (0) | 2022.10.19 |