
์ค์๊ฐ ๋ฐ์ดํฐ๋ ์ฑํ
, ์๋ฆผ, ๊ฒ์, ๋ผ์ด๋ธ ์
๋ฐ์ดํธ ๋ฑ์์ ํต์ฌ์ด๋ค.
React Native์์ WebSocket์ ํตํด ์ค์๊ฐ์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ์ฃผ๊ณ ๋ฐ๋
๊ธฐ๋ณธ ๊ตฌ์กฐ์ ์์ ๋ฅผ ์ ๋ฆฌํด๋ดค๋ค. ๐
import React, { useEffect, useRef } from 'react';
import { Text } from 'react-native';
export default function WebSocketExample() {
const socketRef = useRef<WebSocket | null>(null);
useEffect(() => {
socketRef.current = new WebSocket('wss://echo.websocket.org');
socketRef.current.onopen = () => {
console.log('โ
WebSocket ์ฐ๊ฒฐ๋จ');
socketRef.current?.send('Hello Server!');
};
socketRef.current.onmessage = (event) => {
console.log('๐ฉ ๋ฐ์ ๋ฉ์์ง:', event.data);
};
socketRef.current.onerror = (error) => {
console.log('โ ์๋ฌ ๋ฐ์:', error);
};
socketRef.current.onclose = () => {
console.log('๐ ์ฐ๊ฒฐ ์ข
๋ฃ๋จ');
};
return () => {
socketRef.current?.close();
};
}, []);
return <Text>WebSocket ์ฐ๊ฒฐ ์์ </Text>;
}
import { useEffect, useRef } from 'react';
export const useWebSocket = (url: string) => {
const socketRef = useRef<WebSocket | null>(null);
useEffect(() => {
socketRef.current = new WebSocket(url);
socketRef.current.onopen = () => {
console.log('๐ WebSocket ์ฐ๊ฒฐ');
};
return () => {
socketRef.current?.close();
};
}, [url]);
const sendMessage = (msg: string) => {
socketRef.current?.send(msg);
};
return { sendMessage };
};
Socket.io-client๋ฅผ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ๋ ๋ง์ง๋ง,npm install socket.io-client
import io from 'socket.io-client';
const socket = io('https://your-chat-server.com');
socket.on('connect', () => {
console.log('โ
์ฐ๊ฒฐ๋จ');
});
socket.on('chat', (msg) => {
console.log('๐จ๏ธ ์ฑํ
๋ฉ์์ง:', msg);
});
| ํญ๋ชฉ | ๋ด์ฉ |
|---|---|
| ์ฐ๊ฒฐ ์ ์ง | ๋ฐฑ๊ทธ๋ผ์ด๋ ์ํ์์๋ ์ ์ง ํ์ ์ฌ๋ถ ํ์ธ |
| reconnect | ๋๊น ์ ์๋ ์ฌ์ฐ๊ฒฐ ๋ก์ง ํ์ |
| ๋ณด์ | ์ธ์ฆ ํ ํฐ๊ณผ ํจ๊ป ์ฐ๊ฒฐํ๊ฑฐ๋ SSL ์ฌ์ฉ ๊ถ์ฅ |
| ์๋ฌ ์ฒ๋ฆฌ | onerror, onclose ์ฒ๋ฆฌ ํ์ |
| ํญ๋ชฉ | ์ค๋ช |
|---|---|
| WebSocket | ์๋ฐฉํฅ, ์ค์๊ฐ ํต์ ์ ์ ํฉ |
| React Native | ๊ธฐ๋ณธ WebSocket ๋๋ Socket.io ์ฌ์ฉ |
| ๊ตฌ์กฐํ | ์ปค์คํ ํ ์ผ๋ก ์ถ์ํ ์ถ์ฒ |
| ์ค์ ์ ์ฉ | ์ฑํ , ์๋ฆผ, ์ฃผ๊ฐ ๋ฑ ๋ค์ํ๊ฒ ํ์ฉ ๊ฐ๋ฅ |
๐ก ์ค์๊ฐ ๋ฐ์ดํฐ ํ๋ฆ์ ์ฌ์ฉ์ ๊ฒฝํ์ ํ ๋จ๊ณ ์ ๊ทธ๋ ์ด๋ํ๋ค.
WebSocket์ ํตํด ์ฑ์ ์ฆ๊ฐ์ ์ธ ๋ฐ์์ฑ์ ๋ํด๋ณด์!