我正在使用Node模塊everyauth
進行Twitter驗證。目前,用戶必須使用重定向路徑去/auth/twitter/
進行身份驗證。使用Twitter在同一頁面進行身份驗證
問題是重定向路徑重新加載頁面,這打破了我構建的「單頁應用程序」結構。是否可以在「單頁」邊界內使用Twitter進行身份驗證?
我正在使用Node模塊everyauth
進行Twitter驗證。目前,用戶必須使用重定向路徑去/auth/twitter/
進行身份驗證。使用Twitter在同一頁面進行身份驗證
問題是重定向路徑重新加載頁面,這打破了我構建的「單頁應用程序」結構。是否可以在「單頁」邊界內使用Twitter進行身份驗證?
你不能這樣做,你需要打開一個新頁面(但你可以打開一個彈出窗口,例如使Twitter重定向回到關閉該彈出窗口的頁面)。
不知道這是你在找什麼,我也在構建一個單頁的應用程序。重定向是不可避免的,但用戶轉到Twitter,認證並返回到同一頁面,但我根據用戶狀態加載不同的數據,因此用戶可以獲取通用內容或其保存的內容。
// in server.js
app.get('/', routes.index);
// in routes.js, required in server.js
exports.index = function(req, res){
if(req.loggedIn){
getData(function(data){
res.render('home', { data:, data })
});
} else {
res.render('home', { data: false })
}
};
的getData()在我的情況確實給用戶帶來一些檢查,看看他們的訪問級別,然後從預裝我們的API內容,並傳遞到模板的JSON這一點。然後,當應用程序呈現它只是尋找可用的JSON。
退出怎麼辦?目前'/ logout'會導致刷新。 – Randomblue 2012-01-07 22:05:23
註銷更容易,你可以讓自己成爲路由'/ sign_out'並刪除會話:'delete sess.auth;'(你也可以發送JSON響應並使用Ajax將它保存在同一頁面中)。 – alessioalex 2012-01-07 22:17:33