2017-08-22 82 views
0

我想處理我的所有cookies和會話的東西在一個函數然後重定向到目標路徑。我在快遞使用此功能:太多的重定向

app.all('*', function(req, res, next){ 
    if('_id' in req.session) 
     next() 
    else if('userInfo' in req.cookies){ 
     req.session._id = req.cookies.userInfo._id 
     next() 
    } else { 
     res.redirect('../login') 
    } 
    res.end() 
}) 

但瀏覽器打印此錯誤: 網:: ERR_TOO_MANY_REDIRECTS
什麼問題?

+0

嘗試刪除'res.end()' –

回答

1

當網絡瀏覽器將您重定向到另一個網頁時,會出現此錯誤,然後該網頁會將您重新導向到同一個瀏覽器。你的配置是錯誤的。 app.all('*', ..)每當發出請求時都會反覆運行,導致重複。

您需要有比app.all( * ..) //all更好的配置。您需要更多地指定它,以免重複。

我會說它只限於一些url s,而不是全部。你可以做

app.get('/cookieCheckerPage', function(req, res){ 
//code here 
}); 

另請參閱Error 310 (net::ERR_TOO_MANY_REDIRECTS):