解决Iframe嵌入帆软BI系统后,Chrome升级后跨域出现登录界面,Cookie写入不成功。解决办法
生活随笔
收集整理的這篇文章主要介紹了
解决Iframe嵌入帆软BI系统后,Chrome升级后跨域出现登录界面,Cookie写入不成功。解决办法
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
當(dāng)我們使用Iframe嵌入fine BI的頁面時,由于google chrome的高版本為了防止CSRF 攻擊,默認將Cookie的SameSite設(shè)置為lax了,導(dǎo)致 cookie跨域的時候就寫不成功了,所以導(dǎo)致嵌入的iframe出現(xiàn)登錄界面。這是咋們可以自己手動來寫這個cookie,并且將SameSite的值設(shè)置為none。
我們只需要在嵌入的url上加上fine_auth_token,通過攔截器獲取到fine_auth_token,然后強行寫入,我們寫一個帆軟插件,實現(xiàn)一個EmbedRequestFilterProvider擴展:
@Overridepublic void filter(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) throws IOException, ServletException {// LogUtils.info("我開始filter---------------------------------------------------------");String fine_auth_token = httpServletRequest.getParameter("fine_auth_token");//httpServletResponse.setHeader("Access-Control-Allow-Origin", "*");if(fine_auth_token != null && fine_auth_token.equals("") == false){LOGGER.debug("ChromeFilter fine_auth_token:"+fine總結(jié)
以上是生活随笔為你收集整理的解决Iframe嵌入帆软BI系统后,Chrome升级后跨域出现登录界面,Cookie写入不成功。解决办法的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: electron 打包后 __stati
- 下一篇: 清华大学《操作系统》(十一):处理机调度