2013-03-11 5 views
0

저는 node.js를 처음 사용하기 때문에 부지런히하십시오.node.js - express - URL 및 오류 처리

나는 node.js와 express-module로 놀고있다. 나는 방법 브라우저 요청을 처리하는 생각을했고, 지금은 간단한 질문이 있습니다

이 좋은 생각/연습 또는를 처리 할 수있는 더 나은 솔루션이 있습니까?

var http = require('http'); 
var express = require('express'); 
var fs = require('fs'); 
var app = express(); 

http.createServer(app).listen(80); 

app.get('/*',function(req,res,next){ 
    fs.exists(__dirname + req.url, function (exists) { 
     if(exists) 
     { 
      console.log('Sending ' + __dirname + req.url + "..."); 
      res.sendfile(__dirname + req.url);  
     } 
     else 
     { 
      console.log(__dirname + req.url + " not found!"); 
      res.send('Sorry, page not found.',404);  
     } 
    }); 
}); 

답변

1

익스프레스는 Connect을 기반으로하며 미들웨어를 지원합니다. 그리고 귀하의 상황에 맞는 완벽한 미들웨어가 있습니다 : static file serving.

app.use(express.static(__dirname + '/public')); 

이것은 /public 디렉토리에 루트 디렉토리에서 사용할 정적 파일을 모든 파일을 제공합니다. 별도로 처리되지 않고 파일이없는 경로의 경우 404 오류가 반환됩니다.

btw. 너는 listen-call을 끝에두고 싶다.

+0

답장을 보내 주셔서 감사합니다. Express 또는 노드 모듈 전반에 대한 설명서가 있습니까? – steffka

+1

예, [Express 가이드] (http://expressjs.com/guide.html) 및 [API 참조] (http://expressjs.com/api.html) 및 물론 [연결 문서] (http://www.senchalabs.org/connect/) 전체 개요를 참조하십시오. 그런 다음 프로젝트의 출처를 항상 확인할 수 있습니다. – poke

+0

좋습니다, 그렇게하겠습니다. 고마워요! – steffka