在我的应用程序的首页上,用户可以注册一个帐户然后登录。它表示为首页上的登录和注册按钮,然后在单击时显示相应的表单。
如果用户已经登录,我想用注销按钮替换这两个按钮,但我需要先通知客户。
在我的index.js中,我正在提供静态html,如此
app.use(express.static('public'));
我以为我可以做以下
app.get('/', function(req, res) {
// inform the client if req.user isn't null
});
但永远不会调用回调
答案 0 :(得分:0)
嗯!我想会有一个登录/注册表格,所以必须有两个路由一个.get()
,第二个路由.post()
:
app.get('/', function(req, res) {
// This is for navigation to the home page
}).post('/', function(req, res){
// inform the client here about the req.body.user
});
我想你已经设置了这个:
app.use(bodyParser.urlencoded({extended:true})); // for "formurlencoded"
app.use(bodyParser.json()); // for "application/json"
如果没有,那么您必须首先加载此模块require('body-parser')
并仅在您使用 express 4 时才需要它。
答案 1 :(得分:0)
我找到了解决方案。
在我的index.js中,我有这个
app.get('/isloggedin', function(req, res) {
res.json({ loggedin: (req.user != null) });
});
然后我可以发送/ isloggedin的get请求并处理结果
$.get('/isloggedin', {}, function(data) {
if (!data.loggedin) {
// remove logged-in only elements
} else {
// remove logged-out only elements
}
});