gpt4 book ai didi

javascript - 避免从浏览器控制台修改 Javascript 变量

转载 作者:行者123 更新时间:2023-11-28 11:35:38 25 4
gpt4 key购买 nike

我有一个问题。我定义了一些全局变量并将其命名为一个名为“app”的对象。示例:

window.app : {
foo : null,
bar : null,
}

嗯,我的想法是,我希望能够通过调用 app.foo = "baz"或 app.bar = "baz"来修改任何模块中的这些变量,但我不希望用户能够从浏览器控制台(元素检查器)修改这些变量。

可能吗?

PD:嗯,我有一个与服务器同步的 Backbone.js 集合。我不希望用户能够使用控制台修改该集合

最佳答案

没有。浏览器是用户的域。他们可以修改您的脚本并以各种方式(通过控制台或浏览器插件)注入(inject)自己的功能。这就是为什么您永远不应该盲目信任服务器端的用户输入的原因之一。

他们甚至可以手动伪造完整的请求,欺骗您的服务器认为您的 JavaScript 代码发出了该请求。

如果您希望这些值是安全的,则需要将它们保存在服务器上。当然,您可以将它们发送到客户端,只要您能够根据服务器上的值验证这些值。

关于javascript - 避免从浏览器控制台修改 Javascript 变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22262902/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com