添加iframe到facebook不再有效,因为~2周

时间:2011-11-22 12:04:56

标签: javascript jquery facebook iframe firefox-addon

我正在写一个firefox扩展来读出facebook用户的隐私设置。 (不是Facebook应用!!)要在facebook的不同网站之间切换,我使用了iframe,但这不再适用了。我有这个问题,因为2周。

$('#globalContainer').append('<iframe id="reusable_iframe" src="" width="90%"  
height="400" name="reusable_iframe"></iframe>');
//....
$('#reusable_iframe').attr('src', link);

我遵循相同的原产地政策,自从2周以来工作得很好!?一个例子:

var link = "http://www.facebook.com/editprofile.php?sk=basic";

现在我得到一个空白的iframe :(

有趣的是,如果我将“http://www.youtube.com/embed/Qi_AAqi0RZM”或“http://trolololololololololololo.com/”添加到iframe,它的工作没有问题...: /

facebook改变了iframe中自己链接的规则吗?有解决方法吗?我还有另一种方法可以使用firefox-extensions扫描不同的网站吗?我宁愿留在内容脚本....

编辑:这就是它看待萤火虫的方式......也有趣的是,facebook页面http://www.facebook.com/undefined正在运作!?

<iframe id="areusable_iframe" width="90%" height="400" name="areusable_iframe" src="http://www.facebook.com/">
  <html>
    <head>
    </head>
    <body>
    </body>
  </html>
</iframe>

1 个答案:

答案 0 :(得分:3)

Facebook将以下响应标头发送到浏览器:

  

X-Frame-Options:DENY

这会导致所有主流浏览器(甚至是IE8及更高版本)阻止在帧内显示它。

旧的方式是使用JavaScript强制页面作为顶部窗口打开的“帧破坏者”,但它非常不友好,因此在大多数不希望以帧显示的现代网站中它被这个标题取代。 / p>

虽然抱歉,但你无能为力。

“未定义”页面只是空白内容,即404自定义错误页面,因为它不包含上述标题,可以在框架内显示。

要详细了解X-Frame-Options标题,请参阅this documentation