>npm install socket.io
1. server.js
// fs 모듈
var fs = require('fs');
// 서버생성
var server = require('http').createServer();
var io = require('socket.io').listen(server);
// 서버실행
server.listen(3000, function(){
console.log('Server Running at http:127.0.0.1:3000');
});
// 웹 서버 이벤트 연결
server.on('request', function(request, response){
//html 파일 읽기
fs.readFile('index.html', function(error, data){
response.writeHead(200, {'Content-Type': 'text/html'});
response.end(data);
});
});
// 소켓서버 이벤트 연결
io.sockets.on('connection', function(socket){
// join 이벤트
socket.on('join', function(data){
socket.join(data);
socket.set('room', data);
});
// message 이벤트
socket.on('message', function(data){
socket.get('room', function(error, room){
io.sockets.in(room).emit('message', data);
});
});
});
2. index.html
<!DOCTYPE HTML>
<html>
<head>
<title> SOCKET.IO ROOM </title>
<meta charset="utf8" />
<script src="/socket.io/socket.io.js"></script>
<script src="http://code.jquery.com/jquery-1.8.0.min.js"></script>
<script>
$(document).ready(function(){
//변수선언
var room = prompt('방 이름을 입력하세요.','');
var socket = io.connect();
//소켓 이벤트 연결
socket.emit('join', room);
socket.on('message', function(data){
$('<p>'+data+'</p>').appendTo('body');
});
//버튼 이벤트
$('#btn').click(function(){
var msg = $('#msg').val();
socket.emit('message', msg);
});
});
</script>
</head>
<body>
<input id="msg" type="text" style="width:100px;" />
<input id="btn" type="button" value="send" />
</body>
</html>
'프로그래밍 > nodeJS' 카테고리의 다른 글
| [nodeJS] Flash + Html5 + Node.js (0) | 2015.01.27 |
|---|---|
| [Node.js] net 모듈 + flash 소켓통신 (0) | 2015.01.27 |
| [nodeJS] Socket.IO 모듈 (0) | 2015.01.27 |
| [nodeJS] Express / Routes / Jade 모듈 (0) | 2015.01.27 |
| [nodeJS] connect / connect_router 모듈 (0) | 2015.01.27 |