问题是我发布用户名后,我的会话似乎没有更新。所以从这条路线:/get-username
我得到一个空的json对象。
首先,我从前端VUE发送此邮件:
fetch(API_URL + '/login', {
method: 'post',
body: JSON.stringify({username: this.username}),
headers: {'Content-Type': 'application/json'}
}).then(response => response.json()).then((result) => {
console.log(result)
});
this.$router.push({name: 'game'});
}
上面的代码在此处发送用户名:
app.post('/login', (req, res) => {
req.session.username = req.body.username; // shows the username
res.send(req.session)
});
然后,在FETCH
POST方法之后,我被推到发生此访存的另一个Vue路由:
mounted() {
fetch(API_URL).then(response => response.json()).then(result => {
console.log(result) // But I get empty {}
})
}
上面的代码从此路由中获取价值:
app.get('/get-username', (req, res) => {
res.json({username: req.session.username});
});
所以问题是/get-username
路由会话被删除,或者发生了某些事情,会话忘记了在路由后login
中设置的用户名。