【问题标题】:google caja - run from command linegoogle caja - 从命令行运行
【发布时间】:2013-12-11 14:31:14
【问题描述】:

我已按照here 中描述的安装步骤进行操作。
现在他们说 - “要从命令行运行 Cajoler,请使用 bin/cajole_html 脚本。”,但那里没有文件 cajole_html。 (我已经从他们的 svn repo 中检查了最新的源代码,并且构建成功)
here描述的基本一样,找Setting Up Caja

  1. 我正在寻找一种从命令行运行它的方法,如下所示:
    bin/cajole_html -i <htmlInputFile> -o <outputTarget>

  2. 我真正需要的是知道 javascript 是否“危险”。我真的不需要哄html/css,只需要js。

【问题讨论】:

    标签: google-caja


    【解决方案1】:

    那个页面有点过时了; Caja 现在是一个纯粹的客户端 图书馆。见

    https://developers.google.com/caja/

    特别是

    https://developers.google.com/caja/docs/gettingstarted/

    开始使用。

    【讨论】:

    • 嗯,这不是好消息。我想通过它运行一些js,然后将其保存在本地并提供给用户。这样该应用程序将在我的网站上创建,但它将在其他地方运行。 caja 在这里会有所帮助吗?
    • 代码不再需要转换。现代浏览器原生实现了 Caja 的安全模型。您确实需要加载包含 DOM 仿真层的运行时库,该页面解释了如何执行此操作。当您说它将在其他地方运行时,您是否可以控制该环境?即使在旧的 Caja 下,您的代码也需要运行时库才能运行。
    • 所以这意味着您不能通过将 javascript 评估为字符串或运行它来判断某些 javascript 是否“安全”?有没有办法查看 js 到底想访问什么?如果它这样做了,那么它就会被认为是安全的,如果不是,那就不是。
    • 我无法解析该问题。 “安全”javascript 和“不安全”之间没有有用的区别。 Caja 所做的并且一直在做的是为来宾代码提供一个虚拟网页来运行。来宾代码可以调用虚拟浏览器公开的任何 API,但主机网页控制 API 实际执行的操作。跨度>
    • 例如宿主网页可能禁止虚拟浏览器重定向;那么如果来宾代码试图重定向页面,它就会失败。主机可能会限制虚拟浏览器从特定网站加载图像;如果代码尝试从其他网站加载图像,它将失败。
    猜你喜欢
    • 2020-03-03
    • 2018-01-30
    • 1970-01-01
    • 2013-04-11
    • 1970-01-01
    • 1970-01-01
    • 2014-11-07
    • 2013-10-17
    • 2015-09-01
    相关资源
    最近更新 更多