Refused to frame '' Content Security Policy directive

2021-01-28  乐帮网

html web

当我使用iframe时嵌套一个网页时遇到如下错误:Refused to frame 'https://mp.weixin.qq.com/' because an ancestor violates the following Content Security Policy directive: "frame-ancestors 'self' http://wx.qq.com https://wx.qq.com http://wx2.qq.com https://wx2.qq.com http://wx8.qq.com https://wx8.qq.com http://web.wechat.com https://web.wechat.com http://web1.wechat.com https://web1.wechat.com http://web2.wechat.com https://web2.wechat.com http://sticker.weixin.qq.com https://sticker.weixin.qq.com http://bang.qq.com https://bang.qq.com http://app.work.weixin.qq.com https://app.work.weixin.qq.com http://work.weixin.qq.com https://work.weixin.qq.com http://finance.qq.com https://finance.qq.com http://gu.qq.com https://gu.qq.com http://wzq.tenpay.com https://wzq.tenpay.com http://test.tcp.tencent.com https://test.tcp.tencent.com http://dev.tcp.tencent.com https://dev.tcp.tencent.com http://tcp.tencent.com https://tcp.tencent.com http://mail.qq.com https://mail.qq.com http://wx.mail.qq.com https://wx.mail.qq.com http://iwx.mail.qq.com https://iwx.mail.qq.com http://dev.mail.qq.com https://dev.mail.qq.com"。


引起这个错误的原因是我们请求的网址返回页面的header中包含了一些特定http标头,它告诉浏览器仅允许同一个域名或者指定的域名的页面可以使用iframe嵌套网页。

这个头就是我们之前普及过的X-Frame-Options,比如我网站页面Header中包含内容:

X-Frame-Options: ALLOW-FROM https://web2020.club

那么https://web2020.club 站点的页面就可以嵌套https://lebang2020.cn下的页面。
不要想着去破解它,这个就是浏览器的安全策略,要能破解就是浏览器的bug了。
唯一的展示方法就是通过后端取源页面的数据 ,然后可以展示到自己的站点页面中。

公众号二维码

关注我的微信公众号
在公众号里留言交流
投稿邮箱:1052839972@qq.com

庭院深深深几许?杨柳堆烟,帘幕无重数。
玉勒雕鞍游冶处,楼高不见章台路。
雨横风狂三月暮。门掩黄昏,无计留春住。
泪眼问花花不语,乱红飞过秋千去。

欧阳修

付款二维码

如果感觉对您有帮助
欢迎向作者提供捐赠
这将是创作的最大动力