0

我将在下面描述我的具体案例,但这可能对许多 web-mashup 有用。

我的 Web 应用程序通过填写表单然后提交(通过 javascript)发布到 Twitter。表单的target设置为iframe具有onload触发器的。当onload调用触发器时,应用程序知道 POST 已完成。

这在 Chrome 版本 11 之前工作正常,现在尊重X-Frame-Options=SAMEORIGINTwitter 在 POST 响应中发送的内容。POST 通过,但iframe's onload不再调用。

它在 Firefox 4 中仍然有效,但我想这是一个最终会得到修复的错误。

有没有其他方法可以知道 POST 的状态?我知道知道 POST 响应的内容会违反安全策略,但我对内容不感兴趣。我只想在 POST 完成时通知应用程序。

4

2 回答 2

1

如果您只需要知道 POST 何时提交,而不必知道它是否成功,您可以轮询 iframe 的contentWindowcontentWindow.document间隔。当您无法再访问其中一个对象时,或者当文档的正文为空时,这意味着 iframe 已加载有X-Frame-Options限制的页面,这可能意味着提交已通过。它很hacky,但看起来它可以用于此目的。(您可能需要通过一些组合来确定受限 iframe 的内容在目标浏览器中的样子。)

于 2011-09-06T13:39:52.850 回答
0

您可以通过获取页​​面的标题来做到这一点。在 php 中,它看起来像,

$url = 'http://www.google.com';
print_r(get_headers($url));

于 2011-12-13T11:50:44.257 回答