[英]node redirect not working on angular
嗨,我是節點的新手,我正在構建一個簡單的MEAN堆棧應用程序,以減少我發送這樣的前端文件的代碼
app.use(express.static(path.join(__dirname, 'public')));
我還構建了一個簡單的中間件,用於簡單的身份驗證
requireLogin = function (req, res, next) {
if (!req.user) {
console.log('redirecting :)');
res.redirect('/');
} else {
next();
}
};
app.use('/rooms',requireLogin);
我正試圖在有角度的路線上使用這個中間件。 但是當我在我的角度應用程序中導航時它不起作用(當我直接將URL放到地址欄時它可以工作)我還刪除了由角度添加的/#/。
$locationProvider.html5Mode({
enabled: true,
requireBase: false
});
我正在使用ui-router進行路由。
您應該在angular.js應用程序上重定向角度 ,而不是重定向。 例如,
requireLogin = function (req, res, next) {
if (!req.user) {
console.log('User does not exist.');
return false;
//
} else {
next();
}
};
app.use('/rooms', requireLogin);
然后,除非有用戶登錄,否則/rooms
將無法訪問。
后端路由(快速路由):這些是最終用戶不必了解甚至使用它們的路由(您的角度應用將使用它們與后端通信以處理其數據,但最終用戶不會把它們直接放在瀏覽器上))。
前端路由(有角度的路由):是映射到應用程序的不同頁面的路由,因此,最終用戶可以使用它們直接訪問應用程序的某些部分。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.