【发布时间】:2014-05-20 11:24:32
【问题描述】:
我正在编写一个可供外部客户使用并由我的客户在其网络浏览器中执行的 js API。
由于这可能对我的网络用户有害(安全漏洞等),我希望至少允许或禁止访问 document 全局变量和其他类似 XMLHTTPRequest API 的变量。
我该怎么做?
编辑:
我正在考虑在 API 用户编写的函数的包装器上执行 document = null 之类的操作,但它不起作用。此外,使用这种方法很难做到彻底,因为有太多的变通方法和太多的可能性要考虑所有这些。
【问题讨论】:
-
根据您运行他们的代码的方式,可能会隐藏这些变量。将它们完全删除并不容易,可能需要严格模式。祝你好运。
-
不要用 JavaScript 编写 API 代码?为工作使用正确的工具。 JavaScript 并不是解决所有编程问题的锤子。
-
George,API 可以是任何语言(在本例中为 `node.js),但 API 的结果必须是 js,因为这是分发代码以在 Web 浏览器中运行.我考虑过使用 Applet 或 Java Web Start,但我不想通过告诉客户安装东西来赢得客户的不信任。
标签: javascript security web-standards