[flutter] 플러터(Flutter)에서 웹소켓(WebSocket) 채팅 구현 방법은?

1. 웹소켓(WebSocket) 패키지 추가

먼저, web_socket_channel 패키지를 플러터 프로젝트에 추가해야 합니다. pubspec.yaml 파일에 아래와 같이 패키지를 추가합니다.

dependencies:
  web_socket_channel: ^2.1.0

패키지를 추가한 후에는 flutter pub get 명령어를 실행하여 패키지를 다운로드 및 설치합니다.

2. 웹소켓(WebSocket) 연결

다음으로, 웹소켓을 서버에 연결하는 코드를 작성해야 합니다. 예를 들어, 다음과 같이 웹소켓을 생성하고 연결할 수 있습니다.

import 'package:web_socket_channel/io.dart';

final channel = IOWebSocketChannel.connect('ws://echo.websocket.org');

위의 코드에서는 web_socket_channel 패키지의 IOWebSocketChannel.connect 메서드를 사용하여 웹소켓을 열고 서버에 연결합니다.

3. 채팅 메시지 송수신

웹소켓이 연결되면 채팅 메시지를 주고받을 수 있습니다. 예를 들어, 다음과 같이 메시지를 전송하고 수신할 수 있습니다.

// 메시지 전송
channel.sink.add('전송할 메시지');

// 메시지 수신
channel.stream.listen((message) {
  print('수신한 메시지: $message');
});

위의 코드에서는 channel.sink.add 메서드를 사용하여 메시지를 전송하고, channel.stream.listen 메서드를 사용하여 메시지를 수신합니다.

이제 단계별로 웹소켓을 사용하여 채팅 애플리케이션을 구현하는 방법에 대해 알아보았습니다.

더 자세한 내용은 웹소켓(WebSocket) 패키지 공식 문서를 참고할 수 있습니다.