javascript - 无法让简单的 ADsafe 小部件工作

标签 javascript sandbox

我正在尝试使用 Douglas Crockford 的 ADsafe图书馆。 我认为它应该限制可以使用的 JavaScript,但它似乎让危险的调用通过,例如 eval()

这是一个不限制任何内容的沙箱示例:

<html>
<head>
<title>ADsafe Widget Template</title>
</head>
<body>
    <script src="adsafe.js"></script>

    <div id="WIDGET_">
    <script>
        ADSAFE.go("WIDGET_", function (dom, lib) {
            "use strict";

            // 
            // ADsafe is allowing these to execute!!
            // 
            window.alert("window.alert is working :(");
            eval('window.alert("hello from eval")');
            window.location = "http://www.google.com";
        });
    </script>
    </div>
</body>
</html>

有人知道 ADsafe 沙箱是如何工作的吗?

最佳答案

据我所知,ADsafe 实际上不会检查您的代码是否存在这些违规行为。您应该使用 JSLint启用 ADsafe 选项后,在使用之前解析任何不受信任的 JavaScript 并验证是否存在 ADsafe 违规。

如有错误,请大家指正。

关于javascript - 无法让简单的 ADsafe 小部件工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7162379/

相关文章:

javascript - 从外部网络访问时缓存 css/js

ios - Sandbox StoreKit 收据中缺少交易

ios - 如何在沙盒模式下知道自动更新产品更新

.net - 寻找一个锁定的脚本解释器

python - PyInstaller 生成的可执行文件在 MacOS X 上的代码签名不被接受

api - 我需要帮助查找 Paypal 客户端 ID 和客户端 secret ID

javascript - Joomla - 如何使用用户在模板参数中提供的信息从头部取消设置 JS 文件

Javascript:indexOf() 和 substr() 未返回日期字符串的预期结果

javascript - Visual Studio 2015 RTM - 更新 TypeScript 工具后失去 JavaScript 支持

javascript - 组合框不会显示加载的商店数据