서버와 브라우저 간 연결을 유지한 상태로 데이터를 교환할 수 있습니다.
이때 데이터는 ‘패킷(packet)’ 형태로 전달되며,
전송은 커넥션 중단과 추가 HTTP 요청 없이 양방향으로 이뤄집니다.
이런 특징 때문에 웹소켓은 온라인 게임이나 주식 트레이딩 시스템 같이 데이터 교환이
지속적으로 이뤄져야 하는 서비스에 아주 적합합니다.
// WebSocket 연결 생성
const socket = new WebSocket('ws://localhost:8080');
// 연결이 열리면
socket.addEventListener('open', function (event) {
socket.send('Hello Server!');
});
// 메시지 수신
socket.addEventListener('message', function (event) {
console.log('Message from server ', event.data);
});
WebSocket.close()
연결을 닫습니다.
WebSocket.send()
전송할 데이터를 큐에 등록합니다.
addEventListener() 메서드를 사용하거나 WebSocket 인터페이스의 oneventname 속성에 수신기를 할당해서 아래의 이벤트를 수신할 수 있습니다.
close
WebSocket의 연결이 닫힐 때 발생합니다.
error
WebSocket의 연결이, 일부 데이터 전송의 실패 등 오류로 인해 닫힐 때 발생합니다.
message
WebSocket으로 데이터를 수신했을 때 발생합니다.
open
WebSocket 연결이 열렸을 때 발생합니다.