[英]Knowing the status of a form POST that is protected by X-Frame-Options
我將在下面描述我的具體情況,但這可能對許多Web混搭有用。
我的Web應用程序通過填寫表單然后提交(通過javascript)將信息發布到Twitter。 表單的target
設置為具有onload
觸發器的iframe
。 當onload
觸發器時,應用程序知道POST已完成。
在Chrome版本11之前,該方法一直可以正常工作,直到Chrome版本11現在尊重Twitter在POST響應中發送的X-Frame-Options=SAMEORIGIN
。 POST可以通過,但不再調用iframe's onload
。
它仍然可以在Firefox 4中使用,但是我想這是一個錯誤,最終將得到修復。
還有其他方法可以知道POST的狀態嗎? 我了解知道POST響應的內容將違反安全策略,但是我對內容不感興趣。 我只希望在POST完成后通知應用程序。
如果您只需要知道POST的提交時間,而不必知道它是否成功,則可以按一定的時間間隔輪詢iframe的contentWindow
和contentWindow.document
。 如果您無法再訪問這些對象之一,或者文檔的正文為空,則表示iframe加載了具有X-Frame-Options
限制的頁面,這很可能意味着提交已通過。 它很hacky,但看起來可以用於此目的。 (您可能必須進行幾種組合才能確定目標瀏覽器中受限iframe的內容。)
您可以通過獲取頁面標題來實現。 在php中,
$url = 'http://www.google.com';
print_r(get_headers($url));
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.