玩家对象 map 。玩家名称-6ren">
gpt4 book ai didi

javascript - Object as dictonary 的安全性真的由标准来保证吗?

转载 作者:行者123 更新时间:2023-11-30 10:40:24 24 4
gpt4 key购买 nike

var x = Object.create(null);
x["hello"] = "world";

但是我可以允许未经验证的用户输入作为键吗?我想将它用作玩家名称 -> 玩家对象 map 。玩家名称的长度限制为 32。我担心是否有特殊的属性键可以让玩家获得服务器的控制权。

编辑:我不是在制作网络服务器。 JavaScript 将通过嵌入游戏服务器的 SpiderMonkey 在服务器端运行。如果有人劫持了那里运行的 JavaScript,他们可能会破坏游戏。

最佳答案

一句话:不,只要记住Google Docs __proto__ fail

您应该使用类似Hash 的类,或者至少访问这些前缀为:

var hash = {}, key = "something-evil", value = Math.PI;
hash["$" + key] = value;
console.log( hash["$" + key] == value );

关于javascript - Object as dictonary 的安全性真的由标准来保证吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11334526/

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