2013-05-09 1 views
1

안녕하세요, get, post 등의 메소드에 대한 요청을 처리하기 위해 연결 라우터를 사용하는 미들웨어가 있습니다. 두 사람이 다른 방법을 선택하면 오류가 발생합니다. 라우터 function.Below 내부의 요청 객체의 범위가하는 것은 내가 router.get 내부의 요청 객체의 범위를 가지고 router.post.I이 전에 req.method를 확인하기 위해 필요 내 코드연결 라우터에서 요청 객체를 가져 오는 것

var connectDomain = require('connect-domain'), 
connectRoute = require('connect-route'), 
connect = require('connect'), 
app = connect(); 
app.use(connectDomain()) // For error handling 
.use(connect.query())// To use automatic query 
.use(connectRoute(function (router) { 
    // To Handle Get request 
    router.get('/aaa', function (req, res, next) {   
     console.log ("Got Trigger request to GET"); 
    }) 
    // To Handle POST request 
    router.post('/aaa', function (req, res, next) { 

     console.log ("Got Trigger request to POST); 


    }) 
})) 

입니다 오류가 발생했습니다. 더 이상 진행할 수 없습니다. 도움이 많이 도움이 될 것입니다.

답변

0

다음과 같은 이유로 미들웨어를 사용할 수 있습니다 :

app.use(connectDomain()) 
.use(connect.query()) 
.use(function(req, res, next) { 
    if (req.method !== 'GET' && req.method !== 'POST') { 
    res.writeHead(405); 
    res.end('You are not allowed to use this method!'); 
    } else { 
    next(); 
    } 
}) 
.use(connectRoute(function (router) { 
    ... 
})); 
관련 문제