2016-08-25 8 views
1

아마도 바보 같은 실수 일지 모르지만 GET 요청에서 응답을받지 못하는 이유를 알 수 없습니다.Express route가 반환되지 않음

이 루트에있는 내 서버에 파일의 일부입니다

//server.js 
... 
var serverRoutes = require('./server/routes'); 
app.use('/server', serverRoutes); 
... 

을 내 경로가 파일 : 나는 그냥 포장 마차 브라우저에서 /server/test로 이동

//server/routes/index.js 
var express = require('express'); 
var router = express.Router(); 

module.exports = function() { 
    router.get('/test', function(req, res, next){ 
    console.log("HIT"); 
    res.status(200).send("OK"); 
    }); 

    return router; 
} 

매번. 터미널에 아무것도 기록되지 않고 브라우저에서 "OK"응답이 수신되지 않습니다. 무엇이 누락 되었습니까?

답변

3

serverRoutes 모듈은 라우터를 반환하는 함수를 내 보냅니다. 당신은 app.use에 반환하는 Router 인스턴스를 전달하기 위해 그것을 호출해야합니다

그렇지 않으면
app.use('/server', serverRoutes()); 

, 고속 그것으로 아무것도하지 않기 때문에 응용 프로그램이 중단 될 것이다, 미들웨어로 내 보낸 기능을 치료하는 것입니다 response이 전달되었습니다.

+0

위대한 - 그것은 일년 내내 찾아 낼 것입니다! – tommyd456