在同一页面使用Twitter进行身份validation

我正在使用Node模块everyauth用Twitter进行身份validation。 目前,用户必须使用redirectpath进入/auth/twitter/进行身份validation。

问题是redirectpath重新加载页面,这打破了我build立的“单页应用程序”结构。 是否可以在“单页”边界内保持与Twitter的身份validation?

Solutions Collecting From Web of "在同一页面使用Twitter进行身份validation"

你不能这样做,你需要打开一个新的页面(但是你可以打开一个popup窗口,例如把Twitterredirect回到closures那个popup窗口的页面)。

不知道这是你在找什么,我也正在build立一个单一的页面的应用程序。 redirect是不可避免的,但用户转到Twitter,authentication并返回到同一页面,但我根据用户状态加载不同的数据,所以用户要么获取通用内容或保存的内容。

 // 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 }) } }; 

我的scheme中的getData()会对用户进行一些检查以查看其访问级别,然后从API中预加载内容,并将其作为JSON传递到模板中。 然后,当应用程序呈现它只是寻找可用的JSON。