socket.io 튜토리얼
socket.io 시작하기
수색…
비고
Socket.IO
는 realtime
웹 응용 프로그램을위한 자바 스크립트 라이브러리입니다. 웹 클라이언트와 서버 간의 실시간 양방향 통신을 가능하게합니다. 두 부분으로 구성되어 있습니다. 브라우저에서 실행되는 클라이언트 측 라이브러리와 node.js
용 서버 측 라이브러리입니다. 두 구성 요소 모두 거의 동일한 API를 사용합니다. node.js와 마찬가지로 이벤트 주도형입니다.
Socket.IO
주로 같은 인터페이스를 제공하면서 fallback 옵션으로 polling과 함께 websocket
프로토콜을 사용합니다. webSocket
의 래퍼로만 사용할 수 있지만 여러 소켓으로 브로드 캐스팅하고 각 클라이언트와 관련된 데이터를 저장하며 비동기 I / O를 포함하여 더 많은 기능을 제공합니다.
버전
번역 | 출시일 |
---|---|
1.4.8 | 2016-06-23 |
1.4.7 | 2016-06-23 |
1.4.6 | 2016-05-02 |
1.4.5 | 2016-01-26 |
1.4.4 | 2016-01-10 |
1.4.3 | 2016-01-08 |
1.4.2 | 2016-01-07 |
1.4.1 | 2016-01-07 |
1.4.0 | 2015-11-28 |
1.3.7 | 2015-09-21 |
1.3.6 | 2015-07-14 |
1.3.5 | 2015-03-03 |
1.3.4 | 2015-02-14 |
1.3.3 | 2015-02-03 |
1.3.2 | 2015-01-19 |
1.3.1 | 2015-01-19 |
1.3.0 | 2015-01-19 |
1.2.1 | 2014-11-21 |
1.2.0 | 2014-10-27 |
1.1.0 | 2014-09-04 |
1.0.6 | 2014-06-19 |
1.0.5 | 2014-06-16 |
1.0.4 | 2014-06-02 |
1.0.3 | 2014-05-31 |
1.0.2 | 2014-05-28 |
1.0.1 | 2014-05-28 |
1.0.0 | 2014-05-28 |
설치 또는 설정
먼저 socket.io
모듈을 node.js
응용 프로그램에 설치합니다.
npm install socket.io --save
기본 HTTP 설정
다음 예제에서는 socket.io
를 포트 3000에서 청취하는 일반 node.js
HTTP 서버에 연결합니다.
var server = require('http').createServer();
var io = require('socket.io')(server);
io.on('connection', function(socket){
console.log('user connected with socketId '+socket.id);
socket.on('event', function(data){
console.log('event fired');
});
socket.on('disconnect', function(){
console.log('user disconnected');
});
});
server.listen(3000);
빠른 설치
Express 애플리케이션은 socket.io
첨부 될 http
서버로 전달 될 수 있습니다.
var app = require('express')(); //express app
var server = require('http').createServer(app); //passed to http server
var io = require('socket.io')(server); //http server passed to socket.io
io.on('connection', function(){
console.log('user connected with socketId '+socket.id);
socket.on('event', function(data){
console.log('event fired');
});
socket.on('disconnect', function(){
console.log('user disconnected');
});
});
server.listen(3000);
클라이언트 측 설정
위의 Hello World 예제에서 클라이언트 측 구현을 확인하십시오.
"안녕하세요!" 소켓 메시지.
노드 모듈 설치
npm install express
npm install socket.io
Node.js 서버
const express = require('express');
const app = express();
const server = app.listen(3000,console.log("Socket.io Hello Wolrd server started!"));
const io = require('socket.io')(server);
io.on('connection', (socket) => {
//console.log("Client connected!");
socket.on('message-from-client-to-server', (msg) => {
console.log(msg);
})
socket.emit('message-from-server-to-client', 'Hello World!');
});
브라우저 클라이언트
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Hello World with Socket.io</title>
</head>
<body>
<script src="https://cdn.socket.io/socket.io-1.4.5.js"></script>
<script>
var socket = io("http://localhost:3000");
socket.on("message-from-server-to-client", function(msg) {
document.getElementById('message').innerHTML = msg;
});
socket.emit('message-from-client-to-server', 'Hello World!');
</script>
<p>Socker.io Hello World client started!</p>
<p id="message"></p>
</body>
</html>
상기 예에서, socket.io 라이브러리 경로로서 정의된다 /socket.io/socket.io.js
.
socket.io 라이브러리를 제공하는 코드를 작성하지는 않았지만 Socket.io는 자동으로이를 수행합니다.