2010-08-04 11 views
0

node.js 서버가 실행 중이고 URL을 탐색 할 때 "hello world"또는 트위터 피드를 표시 할 수 있습니다.Node.js 및 웹 소켓

문제 node.js 인스턴스와 다른 페이지의 클라이언트에 정의 된 websocket간에 통신이 이루어지지 않습니다.

누구에게 아이디어가 있습니까?

고마워요.

+0

참조 : http://stackoverflow.com/questions/3127864/node-js-websocket-location-issue/3443892#3443892 응답에 대한 – Ryan

답변

0

Look here Node.JS와 호환되는 WebSocket 라이브러리 용. Node.JS는 WebSocket 지원을 제공하지 않으므로 추가 라이브러리를 설치해야합니다. Socket.io이면 충분합니다.

+0

감사합니다. 이제는 쉘 창 요청에서 볼 수있는 서버를 새로 고침 할 때 뭔가 가고 있습니다. 유일한 websocket 이벤트는 onclose입니다 - 어떤 아이디어입니까? 고마워요 – dan

+0

코드가 없으면 아이디어가 없습니다. – fuwaneko

1

일부 프록시 뒤에 node.js를 실행 하시겠습니까? 일부 프록시 (예 : ngnix)는 http 1.1을 지원하지 않으며 웹 소켓 용으로는 http 1.1이 필요합니다.

<script src="./Socket.IO/socket.io.js"></script> 
<script> 
    io.setPath('./Socket.IO/'); 

    var socket = new io.Socket('jayz.danstanhope.webfactional.com', { 'port': 80 }); 

    socket.on('connect', function() { 
     alert('connect'); 
    }); 
    socket.on('message', function (msg) { 
     alert('message' + msg); 
    }); 
    socket.on('close', function() { 
     alert('close'); 
    }); 
    socket.on('disconnect', function() { 
     alert('disconnect'); 
    }); 
    socket.connect(); 

</script> 

서버 측 코드 :

0

좋아, 그래서, 다시 클라이언트 측 코드를이 작업 (내가 생각하는)

있어

var sys = require("sys") 
    , fs = require("fs") 
    , path = require("path") 
    , http = require("http"); 
var io = require('/home/danstanhope/webapps/htdocs/Socket.IO-node'); 

var server = http.createServer(function (req, res) { 
    //your normal server code 
    res.writeHead(200, { 'Content-Type': 'text/html' }); 
    res.write('Hello world'); 
    res.end(); 
}); 

server.listen(26970); 
server = io.listen(server); 
server.on('connection', function(client){ 
    sys.log('client connected'); 
}); 

내가 페이지를 새로 고침 크롬에서는 셸에서 기록되는 로그를 볼 수 있습니다.

여기에 내가 볼 수있는 작업은 다음과 같습니다

[email protected] htdocs]$ node server.js 
9 Aug 19:19:37 - socket.io ready - accepting connections 
9 Aug 19:19:40 - Initializing client with transport "websocket" 
9 Aug 19:19:40 - Client 21789167495444417 connected 
9 Aug 19:19:40 - client connected 
9 Aug 19:19:40 - Client 21789167495444417 disconnected 

이 유일한 문제는 지금 화재 자바 스크립트 소켓 경고 그 중 하나를 얻고있다.

아이디어가 있으십니까?

감사합니다, 댄