0

我对 Web 开发比较陌生,我不知道如何将用户信息安全地存储在应用程序的前端。我的问题实际上是使用客户端 javascript 从服务器响应中提取数据的问题。

我所知道的就是通过 EJS 之类的模板检索用户数据,如下所示:

<a id="user_id" value="<%=user._id%>" ></a>

但必须有比这更好的方法吗?而且我觉得将用户信息放入 DOM 是一个坏主意,为什么不放入 WebDB 或 IndexedDB 呢?

我应该这样做吗?

sessionStorage.setItem('user_id', '<%=user._id%>');

问题是这实际上并没有检索数据:

在此处输入图像描述

所以也许我应该问这个问题 - 我如何从 html 头部的服务器响应中获取数据?

4

2 回答 2

1

通常,在成功登录后,cookie 会设置一个唯一标识该用户发出的请求的 UID。一些后端会自动执行此操作(只是 Google jsessionid),并将该 id 映射到您为该客户端保存的一组变量(通常称为 Session Scoped 变量)。

需要将其添加到每个表单将是一个非常低效的过程。请改用 cookie。

于 2015-04-07T20:26:16.863 回答
1

好吧,一旦用户登录,我认为可以向用户显示他/她的用户名,而不是密码。

我会这样做localStorage

window.localStorage.username = 'theboss';
document.getElementById('user_id').value = window.localStorage.username;

localStorage 的文档

于 2015-04-07T20:26:54.070 回答