2012-06-30 1 views
3

은 내가 다음 코드를 사용하는 서버와 클라이언트 타협 내 코드 (app.js)를 공유하려고 nodejs :socket.io와 사용자 정의 정적 파일을 봉사는

내 파일 구조는 다음과 같습니다
var io = require('socket.io').listen(8000), 
    Static = require('socket.io').Static; 

io.configure(function() { 
    var _static = new Static(io); 

    // some methods to add my custom files 

    _static.add('\public\test.js'); 
    io.set('static', _static); 
}); 

:

  1. 루트
    • 공공
      • 톤을 app.js est.js

내가 입력 에 "http : // localhost를 : 8000/public.test.js"브라우저 다운로드 기본 파일이

답변

7

이 질문에 "환영 Socket.IO에하기" 오히려 오래된,하지만 여기 (V0.9를 위해) 할 수있는 현재의 방법 : 자원의 경로가 socket.io 경로에 상대적입니다

var io = require('socket.io').listen(8000); 
io.static.add('/path/for/request.js', {file: 'path/to/file.js'}); 

주, 그래서 요청 URI는 같은 것 :

http://localhost:8000/socket.io/path/for/request.js 

Protocol version not supported과 같은 오류가 표시되면 요청 URI에 관리자가 지원할 수없는 확장자가있을 수 있음을 의미합니다. 작업 구현을위한 their own Static library에서

io.static.add('/path/for/request.foo', { 
    mime: { 
    type: 'application/javascript', 
    encoding: 'utf8', 
    gzip: true 
    }, 
    file: 'path/to/file.js' 
}); 

문서 포인트 : 여기에 지원을 추가하는 방법은 다음과 같습니다.

+0

빌어 먹을, 처음 3 줄을 읽고 "경로가 작동하지 않는 이유는 무엇입니까?" ewww .. –

+0

폴더의 모든 파일을 어떻게 제공합니까? –

+0

io.static.add에 대한 설명서를 찾을 수 없습니다. 나 한테 알려 줄 수있어? –

관련 문제