阻止客户端调用JavaScript函数

Mul*_*ard 2 javascript

想象一下,你有一个像这样的简单JavaScript函数:

function something() {
    console.log("You called that function");
}
Run Code Online (Sandbox Code Playgroud)

您可以将脚本文件包含在HTML文件中并调用该函数.问题是JavaScript是客户端,因此每个人都可以使用谷歌浏览器地址输入或firefox控制台调用此功能.

我怎么能防止这种情况?如果你实现一个游戏或用户可以在记分员列表中的东西,例如,很容易操纵这个记分员.

Pat*_*man 7

我怎么能防止这种情况?

你不能.

你做客户端的一切都必须被认为是不安全的.永远不要假设检查或有效的东西,因为它通过了一些客户端检查.您应该始终对客户端的每个检查使用服务器端验证.总是!

如果你实现一个游戏或用户可以在记分员列表中的东西,例如,很容易操纵这个记分员.

是的,在那个客户端.那么你为什么关心?分数应该在服务器端计算,因此更改UI客户端方面没有任何帮助.

让Jon Skeet害怕!

是