【问题标题】:Is there any ways to prevent user from modifying cookie via document.cookie in browser?有什么方法可以防止用户在浏览器中通过 document.cookie 修改 cookie?
【发布时间】:2018-11-02 03:49:34
【问题描述】:

我正在开发一个从我的服务器调用 api 的 ReactJS 应用程序。登录后,服务器返回一个真实令牌,我需要将它存储在 cookie 中(密钥是token,值是来自服务器的真实令牌。现在我使用的是universal-cookie)。但是当我在浏览器的控制台中将document.cookie 分配给另一个值,如token=xxx 时,cookie 中的token 将被修改。有什么方法可以防止用户通过 document.cookie 修改 cookie? 谢谢!

【问题讨论】:

  • 你为什么要这样做?你认为它解决了什么问题?
  • 我只是想知道有没有办法。其实没关系。再次感谢您:D

标签: reactjs cookies setcookie


【解决方案1】:

要回答您的问题,答案是。您永远不必信任来自浏览器的数据,因为有无数种操作方式。

相反,您应该确保您的后端服务器验证 cookie。

【讨论】:

  • 谢谢 :D 当然我的后端服务器总是验证 cookie。
【解决方案2】:

您无法阻止用户修改 cookie 中的令牌。 universal-cookie 以特定方式存储数据,不应使用 document.cookie 更改数据。此外,您应该始终使用后端中的数据验证 cookie 中的数据,因为用户可以以任何方式操作数据。

最好使用universal-cookie 本身来完成所有你想做的与cookies 相关的任务,因为你几乎可以用它来做任何事情。你也可以尝试一些其他的包比如react-cookies

【讨论】:

  • 是的,我的后端服务器总是验证来自客户端的数据。谢谢你的问题:D
猜你喜欢
  • 2019-11-04
  • 1970-01-01
  • 1970-01-01
  • 2011-04-04
  • 2023-03-31
  • 2012-04-04
  • 2023-03-26
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多