2011-08-20 82 views
0

是否有反向限制Javascript获取,发送请求到指定的域名? 也可以以某种方式禁用JSONP?防止JavaScript GET和脚本

我想开发一个网页内容框架,人们可以在不同的页面中包含JavaScript,但我不希望这些脚本访问任何其他域。

我熟悉firefox的“内容安全策略”,但不幸的是,这只适用于firefox。

回答

2

默认为“禁用”。如果你想“允许”json,你将不得不添加jsonp回调。没有它,js无法检索json响应。

+0

好吧,也许我不够清楚。我想让人们添加应用程序/插件到他们的网站(社区为我的框架编写的插件)。这些第三方应用程序是JavaScript应用程序,它们在HTML页面的其余部分以相同的上下文/页面运行。我不想让这些javascript中的任何一个脚本调用另一台服务器。正如你所看到的,他们可以简单地在源代码中添加一个jsonp回调函数,并且我的用户不能做任何事情(除非他们去检查每个插件的每一行) – Reza

+0

@Reza:所以你只需要验证这些mods,作为phpBB做... – genesis

+0

我在想也许唯一的办法是有插件/应用程序作为iframe解决方案类似于Facebook的做法。但我不确定这是否是唯一可行的解​​决方案 – Reza

0

而不是让用户选择任意javascripts,你可以让他们从批准的脚本列表中选择,并拒绝编辑,如果脚本不包括在正确的域? 或者你可以使用某种自定义标记,而不是被允许写入-tags,他们写[include =“pluginname”],然后你自己将它转换为脚本标记,它的名字是给定的插件发现了什么?

内容安全政策在Chrome中的支持也有限,但目前它并不是你想要的,因为它在市场上的支持和渗透是有限的。

+0

实际上,人们为这些插件所做的事情是,他们正在构建自己的框架。看看netvibes和iGoogle的widget标准。 – Erlend

+0

是否有任何开源工具可以做到这一点?也许一个红宝石DSL转换为JavaScript? – Reza