我正在使用客户端 JavaScript 来使用 Web Storage 存储一些变量,更具体地说,是 sessionStorage。
但我不确定用户是否可以以任何方式简单地修改这些变量的值?如果是这样,请举例说明这种情况是如何发生的。
我正在使用客户端 JavaScript 来使用 Web Storage 存储一些变量,更具体地说,是 sessionStorage。
但我不确定用户是否可以以任何方式简单地修改这些变量的值?如果是这样,请举例说明这种情况是如何发生的。
是的,用户可以随时修改自己存储的值。我可以立即想到三种方法:
重要的是您不信任客户端存储。如果您要将会话信息存储在客户端上,那么您需要某种方式让您的服务器端代码验证信息未被篡改。还有其他原因您可能不想在客户端存储此信息(例如隐私),但假设您已经考虑过这些,您仍然需要确保您信任客户端的数据或确保信任没有必要。
在您的情况下不完全确定,但作为规则会话应始终在服务器端而不是客户端处理。会话的要点之一是出于安全原因从客户端完全删除该数据
完成 hrunting 和 tucker 的回答后,用户甚至可以通过简单地访问浏览器开发工具(通常是 F12)来更改 sessionStorage。