2012-05-17 10 views
0

사이트에서 두 명의 사용자를 의사 소통하는 방법은 무엇입니까? user1과 비슷한 이름 user2 (whith IP)를 클릭하고 메시지를 보냅니다. 나는 데이터베이스와 아약스가 메시지를 저장하고 user2에게 보낼 수 있지만 느리고 적합하지 않음을 알고있다. 나는 시뮬레이션 개인 채팅룸을 원하고 메시지 히스토리를 저장한다. jquery 대화창이 열려있는 한. 내가 찾은 this하지만 알 수 없다. 아무도 아이디어가 있으십니까?두 명의 사용자 Ip와의 통신

var http = require('http'); 
http.createServer(function (req, res) { 
    res.writeHead(200, {'Content-Type': 'text/plain'}); 
    res.end('Hello World\n'); 
}).listen(1337, '127.0.0.1'); 
console.log('Server running at http://127.0.0.1:1337/'); 

해결책이 될 수 WebSocket을 사용 site

+0

그 코드에 대한 폴백의 몇 가지를 제공하는 서버 측 자바 스크립트 시스템입니다 Node.js를위한 것입니다. 따라서 본질적으로 "데이터베이스 및 아약스"의 경우입니다. – Pointy

+1

웹 소켓을 사용할 수 있지만 대상 브라우저에서 지원되지 않으면 아웃 바운드 메시지를 게시하는 동안 인바운드 메시지에 대해 서버를 폴링하는 빈번한 아약스 호출 이외의 다른 옵션이 없습니다. –

+0

나는 데이터베이스없이 통신을 원한다. fopen을 사용할 수 있습니까, fwrite? 방법? –

답변

1

에서 최고 코드? http://www.websocket.org/

채팅 시스템에 적합하므로 메시지를 확인하려면 푸시 대신 푸시를 사용할 수 있습니까?

+0

WebSocket은 firefox와 같은 많은 브라우저를 지원하지 않습니다. 그리고 이것은 클라이언트를 서버로 몰아 넣는 것입니까? –

+0

WebSockets는 데이터가 사용 가능할 때 여러 클라이언트가 연결하고 알림을받을 수있는 서버와 통신하기위한 것입니다. 현재는 널리 사용 가능하지 않지만 WebSocket을 사용할 수없는 경우 긴 폴링 메소드를 대신 사용할 수 있습니다. http://net.tutsplus.com/tutorials/javascript-ajax/start-using-html5-websockets-today/ 또는 http://dsheiko.com/weblog/websockets-vs-sse-vs-long-polling을 참조하십시오. 더 많은 정보를 위해서. – Gavin

+0

그러나 모두 ie 버전이 지원되지 않습니다. –

0

사용 socket.io - 그것은 WebSocket을하고 엿 IE의

+0

어떻게 사용할 수 있습니까? –

+0

Node.js 기반 솔루션이기 때문에 socket.io를 제안하지 않았습니다. 전용 서버를 가지고 있다면 운 좋게 볼 수도 있습니다. – Gavin

+0

질문에 node.js 태그가 있습니다. 그래서 그것은 합법적 인 대답입니다. – alex

관련 문제