2013-01-24 16 views
3

Google Chrome 23和Firefox 18正在推動着我。 我有一個頁面,其中我有一個iframe。 當點擊一個按鈕,我想的iframe打開http://images.google.com瀏覽器不會讓iframe做重定向嗎?

的問題是在iframe會嘗試訪問http://images.google.com,但只要它得到一個重定向指令(該http://images.google.com是issueing),它停止和頁面韓元不會被渲染。這是爲什麼?任何解決方案

這裏是一個片段證明問題:

<iframe id="panel" style="height: 800px; width: 100%" sandbox="allow-scripts" src="http://images.google.com"> 
</iframe> 
+0

尼斯問題衝浪! +1 – ConcurrentHashMap

+0

您是否將iframe注入到「http:// images.google.com」頁面?該頁面提供了一個「X-Frame-Options:SAMEORIGIN」標題。 – apsillers

+0

這就是說,沒有辦法將images.google.com作爲iframe加入我的頁面,因爲它只接受SAMEORIGIN包含內容? –

回答

2

這是一個瀏覽器的安全問題,被稱爲Click-jacking prevention,其中一部分是檢查一個HTTP響應報頭,X-Frame-Options。該報頭可以採用值爲DENYSAMEORIGINALLOW-FROM的原點,這將防止任何成幀,防止外部站點成幀或僅允許通過指定站點成幀。

簡單地說,當這個http頭部存在時,它會阻止網站在<frame>或中呈現。自2009年以來,這個http標題已在大多數瀏覽器中實現,包括IE8 +,Safari,Firefox,Chrome和Opera。

這裏是頭從images.google.comSAMEORIGIN意味着該地址只有一個iframe中呈現時,它正在通過google.com

enter image description here