我正在编写一个chrome扩展,在打开的标签页中插入一个iframe并在其中加载一个url。要加载的url与选项卡中打开的页面不在同一个域中。我正在使用以下代码:
--menifest.json--
"background" : {
"scripts": ["background.js"]
},
"permissions": [
"tabs", "http://*/", "https://*/"
]
--background.js--
chrome.browserAction.onClicked.addListener(function(tab) {
chrome.tabs.executeScript(null,
{file:"logic.js"});
});
--logic.js--
var newdiv = document.createElement('div');
var iframe = document.createElement('iframe');
iframe.setAttribute('src','http://google.co.in');
newdiv.appendChild(iframe);
document.body.appendChild(newdiv);
只有当curent页面为http://google.co.in而不在其他页面上时才有效。所以我遇到跨域问题。但据我所知,扩展可以发出跨域请求,然后如何做?请帮忙。
答案 0 :(得分:2)
Google使用X-Frame-Options标题,许多网站都将其用作最佳做法
X-Frame-Options有三种可能的值:
Google使用SAMEORIGIN值,因此仅当当前页面为http://google.co.in时才有效。
因此,您没有遇到跨域问题,而且是扩展可以发出跨域请求。