inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

Slack 클론 코딩[실시간 채팅 with React]

socket.io 이벤트 연결하기

socket.io 버전

해결된 질문

903

roider2316

작성한 질문수 52

0

다시 시도해보고 질문하겠습니다.

react 웹팩 typescript socket.io babel 클론코딩

답변 1

0

제로초(조현영)

4버전 쓰십쇼! 안 되면 도와드릴게요

0

roider2316

기존의 socket.io를 4.2.0 버전으로 업데이트 하고 useSocket.ts 부분도

import { useCallback } from 'react';
import io, { Socket } from 'socket.io-client';

const backUrl = 'http://localhost:3095';

const sockets: { [key: string]: SocketIOClient.Socket } = {};
const useSocket = (workspace?: string): [SocketIOClient.Socket | undefined, () => void] => {
  const disconnect = useCallback(() => {
    if (workspace) {
      sockets[workspace].disconnect();
      delete sockets[workspace];
    }
  }, [workspace]);

  if (!workspace) {
    return [undefined, disconnect];
  }
  sockets[workspace] = io(`${backUrl}/ws-${workspace}`, {
    transports: ['websocket'],
  });

  return [sockets[workspace], disconnect];
};

export default useSocket;

이렇게 바꿨습니다. 참고로 SocketIOClient.Socket부분은 그냥 Socket으로 쓰니깐

이런 타입 에러가 나서 그냥 원래 타입대로 나뒀습니다. 그리고 실행해보니 콘솔엔

이런 에러가 뜨고

프론트 터미널 쪽에선 webpack-dev-server에러가 떴습니다.

그리고 이게 문제인 것 같은데 백엔드 터미널에서 앱 충돌 에러가 뜹니다.

 

 

0

roider2316

추가로 네트워크 쪽에선 GET요청 전부 504 Gateway Timeout에러가 뜹니다.

Error occurred while trying to proxy: localhost:3090/api/workspaces/sleact/members

0

roider2316

혹시나 4버전으로 수정하는 도중 딴거 건드렸을 까봐 다시 2버전으로 돌려봤는데 백엔드 쪽에서 앱 충돌 문제는 안생기고 버전 안 맞는 에러만 뜨는 것 같습니다.

0

제로초(조현영)

https://github.com/ZeroCho/sleact/blob/master/front/hooks/useSocket.ts

일단 코드는 이것입니다.

0

roider2316

아 제로초님 해결되었습니다. 다른 답글 보니 emit쪽의 오타를 수정해서 해결했다고 하길래 저도 보니 대소문자 오타가 있었네요. 죄송합니다.

기본 셋팅과 관련하여

0

92

1

초기 셋팅 back과 front만 남겨두고 다 지운 후 진행 방법

0

96

2

focus 시에만 화면 업데이트 되는 이유 + 해결방법

0

150

2

useEffect 개수 관리

0

110

2

라이브러리 서치 방법

0

104

2

함수 정의 패턴

0

77

1

npm run dev 에러

0

152

3

npx webpack 후 에러

0

178

2

'void' 형식 식의 truthiness를 테스트할 수 없습니다.ts(1345)

0

144

2

사용자 가입시 에러발생 (TypeError: Cannot read properties of null (reading 'addMembers')

1

178

2

초기세팅중 packge.json 에러떠요

0

156

2

CORS - Access-Control-Allow-Origin 누락 문제

0

431

3

로그인 페이지 무한 새로고침 현상

0

598

2

Module not found: Error: Can't resolve './App' 에러

0

959

1

배포 방법

0

298

2

npm run dev 시 빌드가 매우 느려졌습니다

0

990

2

alias 경로 설정 오류

0

452

2

fetcher 함수의 data 값이 두번 찍히는 이유

0

277

1

제네릭 질문

0

218

2

ts-node 대신 tsx 사용여부

0

373

1

배포 관련 질문

0

247

1

[nginx + https] 서비스를 실행하면 niginx가 아닌 서비스 화면을 보여주게 하고 싶습니다.

0

385

2

[배포하기] webpack에 aws 퍼블릭 IPv4 주소 와 포트 주소를 작성하고 나서 빌드후 실행하면 오류가 발생합니다.

0

336

1

users 호출 시 쿠키가 담기지 않는 이슈 질문드립니다.

0

247

2