主頁(yè) > 知識(shí)庫(kù) > iframe跨域與session失效問(wèn)題的解決辦法

iframe跨域與session失效問(wèn)題的解決辦法

熱門(mén)標(biāo)簽:福州人工智能電銷(xiāo)機(jī)器人加盟 廣州銷(xiāo)售外呼系統(tǒng)定制 地圖標(biāo)注多少錢(qián)一張 宿遷智能外呼系統(tǒng)排名 ai電銷(xiāo)機(jī)器人對(duì)貸款有幫助嗎 怎樣給陜西地圖標(biāo)注顏色 云狐人工智能電話(huà)機(jī)器人 400電話(huà)辦理信任翰諾科技 電銷(xiāo)機(jī)器人 數(shù)據(jù)

何為跨域跨域session/cookie?

也就是第三方session/cookie。第一方session/cookie指的是訪(fǎng)客當(dāng)前訪(fǎng)問(wèn)的網(wǎng)站給訪(fǎng)客的瀏覽器設(shè)置的seesion /cookie, 會(huì)被存儲(chǔ)在訪(fǎng)客的計(jì)算機(jī)上。第三方session/cookie指的是當(dāng)前訪(fǎng)問(wèn)的網(wǎng)站中會(huì)加載(嵌入)另外第三方的網(wǎng)站代碼,例如促銷(xiāo)廣告,那么第三方網(wǎng) 站也會(huì)在訪(fǎng)客的計(jì)算機(jī)上添加session/cookie,這種就是第三方session/cookie。

我的問(wèn)題

在開(kāi)發(fā)訊息在線(xiàn)產(chǎn)品(http://iap.pgia.net)測(cè)試各種瀏覽器的兼容性時(shí),發(fā)現(xiàn)IE瀏覽器(v7\8)都無(wú)法登錄(總是提示驗(yàn)證碼不匹配錯(cuò)誤),而其它瀏覽器無(wú)此問(wèn)題(firefox、百度等)。因此可以斷定這和瀏覽器脫不了干系。

初步分析:

細(xì)查發(fā)現(xiàn),在使用IE瀏覽器(v7\8)訪(fǎng)問(wèn)時(shí),服務(wù)器端日志中顯示sessionId一直在變化,每次請(qǐng)求都會(huì)產(chǎn)生一個(gè)全新的sessionId.

顯然這是導(dǎo)致無(wú)法登錄的直接唯一原因,如果解決這個(gè)問(wèn)題則可正常登錄。

深入分析:

為什么在IE瀏覽器(v7\8)上會(huì)出現(xiàn)這種情況呢,百度了解后得知:

出于隱私安全的考慮,IE會(huì)丟失Iframe中的Cookie,IE6/IE7支持的P3P(Platform for Privacy Preferences Project (P3P) specification)協(xié)議默認(rèn)阻止第三方無(wú)隱私安全聲明的cookie,F(xiàn)irefox、Chrome 不存在此問(wèn)題。

我們知道Session 其實(shí)就是基于Cookie的??蛻?hù)端在第一次與服務(wù)器建立會(huì)話(huà)時(shí),會(huì)分配給客戶(hù)端一個(gè)隨機(jī)的sessionId,并存于客戶(hù)端cookie中,然后在之后的請(qǐng)求中,會(huì)帶上這個(gè)Cookie,如果在客戶(hù)端找不到這樣的Cookie,那么服務(wù)器就會(huì)重新分配一個(gè)。

而我的應(yīng)用結(jié)構(gòu)恰恰如此,即內(nèi)置一個(gè)iframe嵌入遠(yuǎn)程應(yīng)用來(lái)實(shí)現(xiàn)的。

解決辦法:

要解決這個(gè)問(wèn)題就是要在請(qǐng)求時(shí)添加“P3P”協(xié)議。那么如何實(shí)現(xiàn)呢?

在框架頁(yè)面加入如下代碼:

復(fù)制代碼 代碼如下:

%   
// 解決IE7\8跨域訪(fǎng)問(wèn)問(wèn)題  
response.setHeader("P3P","CP=\"IDC DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT\"");  
%>

至此,問(wèn)題已解決

您可能感興趣的文章:
  • 異步 HttpContext.Current實(shí)現(xiàn)取值的方法(解決異步Application,Session,Cache...等失效的問(wèn)題)
  • 瀏覽器關(guān)閉使session失效的問(wèn)題多種解決方式
  • Laravel 5框架學(xué)習(xí)之Eloquent (laravel 的ORM)
  • Laravel 5框架學(xué)習(xí)之表單
  • Laravel 5框架學(xué)習(xí)之日期,Mutator 和 Scope
  • Laravel 5框架學(xué)習(xí)之表單驗(yàn)證
  • Laravel 5 框架入門(mén)(一)
  • 關(guān)于擴(kuò)展 Laravel 默認(rèn) Session 中間件導(dǎo)致的 Session 寫(xiě)入失效問(wèn)題分析
  • Session對(duì)象失效的客戶(hù)端解決方法

標(biāo)簽:綿陽(yáng) 大興安嶺 新疆 宜春 曲靖 黃南 延安 焦作

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《iframe跨域與session失效問(wèn)題的解決辦法》,本文關(guān)鍵詞  iframe,跨域,與,session,失效,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《iframe跨域與session失效問(wèn)題的解決辦法》相關(guān)的同類(lèi)信息!
  • 本頁(yè)收集關(guān)于iframe跨域與session失效問(wèn)題的解決辦法的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章