跳到主要內容

IE IFRAME 不儲存Cookie

參考文章: Cookie blocked/not saved in IFRAME in Internet Explorer

之前沒特別注意過這問題
前一陣子才發現開放給外部嵌入網頁使用的IFRAME元件在 IE 上居然不會有Session存在
以往使用 IFRAME 都是在自家產品內嵌入,使用上都沒碰過問題
這次客戶回報 IE 11的測試有這問題後才發現當網頁網域跟IFRAME網域不同時
IE 會要求提供IFRAME頁面提供 P3P 標籤,否則就不能存Cookie
也因為這個原因,連帶地使得 Session 也不能用了

P3P的相關議題在參考文章的那篇 stackoverflow 討論的滿詳細的
這是一個宣告自己不會蒐集使用者資料或諸如此類的隱私權宣告標籤
參考了許多文章得到的結論是,這是一個逐漸死亡的標準,Chrome跟Firefox都已經放棄了
他的問題包含
1. 不確定有實質法律效力
2. 很難有網站可以完全做到不蒐集使用者資料
    再說就算網站說一套做一套,使用者也得有能力證明網站有蒐集資料

結論是碰到這個問題最簡單的作法是在response中加入P3P header
至於實質效力? 看到一個有點酸的評論 Problem solved, and IE is happy :)
連 IE 11也有是比較讓我意外,希望 M$ 新的Edge可以不要再做這種沒實質效益的行為了

留言