我使用express.session
对服务器端进行身份验证。通信客户端会话信息的正常方式是使用新生成的HTML服务器端重新呈现页面,但这需要重新加载。
我有一个单页应用,并希望避免重新加载。有没有办法访问有关连接用户客户端的信息?这些信息是否存储在cookie中?如何在不重新加载页面或发出额外服务器请求的情况下访问它?
答案 0 :(得分:4)
执行此操作的唯一方法是在初始服务器响应中包含信息(可能是嵌入在HTML中的动态生成的JS对象),或者通过建议的alessioalex发出第二个请求。
在没有与服务器通信的情况下,无法从服务器获取信息......
答案 1 :(得分:3)
正如@stagas建议的那样,您可以使用Express创建自定义路由,例如/user
并使用JSON返回会话数据(用户详细信息)。这样你就不需要刷新页面了。
示例:
app.get('/user', function (req, res) {
res.json(req.session.user);
});