Iframe “如何修复”;用“原点”阻止帧;https://example.org" 从访问交叉原点帧开始。”;

Iframe “如何修复”;用“原点”阻止帧;https://example.org" 从访问交叉原点帧开始。”;,iframe,google-chrome-extension,x-frame-options,Iframe,Google Chrome Extension,X Frame Options,为了我个人的使用,我尝试在iframe中显示。注意:我不想使用谷歌的嵌入式API 以下是我所做的: 使用Chrome扩展来删除以下请求头:X-Frame-Options,访问控制允许来源,访问控制允许方法 改为添加以下标题:访问控制允许方法:,访问控制允许来源:,内容安全策略:帧祖先* 以上是在所有URL上的所有请求头上完成的(browser.webRequest.onHeadersReceived.addListener,在我的扩展名中),它是超级允许的,但现在我只是尝试让它工作 现在我正

为了我个人的使用,我尝试在iframe中显示。注意:我不想使用谷歌的嵌入式API

以下是我所做的:

  • 使用Chrome扩展来删除以下请求头:
    X-Frame-Options
    访问控制允许来源
    访问控制允许方法
  • 改为添加以下标题:
    访问控制允许方法:
    访问控制允许来源:
    内容安全策略:帧祖先*
  • 以上是在所有URL上的所有请求头上完成的(
    browser.webRequest.onHeadersReceived.addListener,在我的扩展名中),它是超级允许的,但现在我只是尝试让它工作
现在我正在尝试做

它起到了一半的作用:

  • 我看到谷歌地图显示在我的iframe上
  • 但底部有一个永久的“加载…”文本,我不能点击标记或搜索内容(请参阅)
  • 我在控制台中遇到以下错误:

我下一步能做些什么来让这一切顺利进行,你有什么想法吗?或者这显然是不可能的?

简短的回答:这是不可能的

详细回答:由服务器端决定。这意味着,打开页面的人并不决定文档是否可以在
iframe
中打开,而是由文档作者决定。在这种情况下,是谷歌

我试着用谷歌搜索实现同样的效果,在谷歌搜索中,你在文本框中键入一个单词,点击submit将弹出一个带有谷歌搜索结果的
iframe
。我做了一些研究,发现这是不可能的,因为谷歌不允许不同的来源显示他们的页面

这就是为什么他们有API

更多关于这个-

Blocked autofocusing on a form control in a cross-origin subframe.
maps:13 Uncaught DOMException: Blocked a frame with origin "https://www.google.com" from accessing a cross-origin frame.
    at Object._.Hr (https://www.google.com/maps/_/js/k=maps.m.en.dc5HEiFGHqQ.O/m=sc2,per,mo,lp,ti,ds,stx,bom,b/rt=j/d=1/rs=ACT90oFcxIV8Ad7kvBMCB_zNoSobKCZYEw:210:51)
    at /maps/_/js/k=maps.m.en.dc5HEiFGHqQ.O/m=vwr,vd,a,owc,ob,sp,en,smi,sc,vlg,log,smr,as,wrc/rt=j/d=1/ed=1/exm=sc2,per,mo,lp,ti,ds,stx,bom,b/rs=ACT90oFcxIV8Ad7kvBMCB_zNoSobKCZYEw:3599:3
    at /maps/_/js/k=maps.m.en.dc5HEiFGHqQ.O/m=vwr,vd,a,owc,ob,sp,en,smi,sc,vlg,log,smr,as,wrc/rt=j/d=1/ed=1/exm=sc2,per,mo,lp,ti,ds,stx,bom,b/rs=ACT90oFcxIV8Ad7kvBMCB_zNoSobKCZYEw:4990:3
    at NLa (https://www.google.com/maps/_/js/k=maps.m.en.dc5HEiFGHqQ.O/m=sc2,per,mo,lp,ti,ds,stx,bom,b/rt=j/d=1/rs=ACT90oFcxIV8Ad7kvBMCB_zNoSobKCZYEw:1677:132)
    at LLa.next (https://www.google.com/maps/_/js/k=maps.m.en.dc5HEiFGHqQ.O/m=sc2,per,mo,lp,ti,ds,stx,bom,b/rt=j/d=1/rs=ACT90oFcxIV8Ad7kvBMCB_zNoSobKCZYEw:1676:469)
    at IIa.f [as H] (https://www.google.com/maps/_/js/k=maps.m.en.dc5HEiFGHqQ.O/m=sc2,per,mo,lp,ti,ds,stx,bom,b/rt=j/d=1/rs=ACT90oFcxIV8Ad7kvBMCB_zNoSobKCZYEw:1561:184)
    at RIa (https://www.google.com/maps/_/js/k=maps.m.en.dc5HEiFGHqQ.O/m=sc2,per,mo,lp,ti,ds,stx,bom,b/rt=j/d=1/rs=ACT90oFcxIV8Ad7kvBMCB_zNoSobKCZYEw:1556:332)
    at eJa (https://www.google.com/maps/_/js/k=maps.m.en.dc5HEiFGHqQ.O/m=sc2,per,mo,lp,ti,ds,stx,bom,b/rt=j/d=1/rs=ACT90oFcxIV8Ad7kvBMCB_zNoSobKCZYEw:1565:43)
    at vA.Ma (https://www.google.com/maps/_/js/k=maps.m.en.dc5HEiFGHqQ.O/m=sc2,per,mo,lp,ti,ds,stx,bom,b/rt=j/d=1/rs=ACT90oFcxIV8Ad7kvBMCB_zNoSobKCZYEw:1564:405)
    at mb (https://www.google.com/maps/_/js/k=maps.m.en.dc5HEiFGHqQ.O/m=sc2,per,mo,lp,ti,ds,stx,bom,b/rt=j/d=1/rs=ACT90oFcxIV8Ad7kvBMCB_zNoSobKCZYEw:1563:293)