Sam*_*Sam 8 javascript jquery google-chrome google-chrome-extension
我做了一些研究,现在我知道不可能在谷歌浏览器中发送带有更改引荐来源的请求,因为浏览器会覆盖更改,但无论如何/谷歌Chrome扩展程序中的任何权限都会禁用此功能,或者使它成为可以使用不同的引荐来源向某个域发送请求?
Web*_*L3D 14
chrome.webRequest正是您所寻找的,特别是您的onBeforeSendHeaders活动.它允许您在发送请求之前更改任何标头(甚至是不安全的标头),但只能在后台脚本中使用.
你需要添加webRequest和webRequestBlocking在清单到您的权限列表.
chrome.webRequest.onBeforeSendHeaders.addEventListener(handle(details), filterObject, extraInfoArray);
Run Code Online (Sandbox Code Playgroud)
这是一个例子:
chrome.webRequest.onBeforeSendHeaders.addListener(function(details){
var newRef = "http://referer.domain/helloworld.example";
var gotRef = false;
for(var n in details.requestHeaders){
gotRef = details.requestHeaders[n].name.toLowerCase()=="referer";
if(gotRef){
details.requestHeaders[n].value = newRef;
break;
}
}
if(!gotRef){
details.requestHeaders.push({name:"Referer",value:newRef});
}
return {requestHeaders:details.requestHeaders};
},{
urls:["http://target.domain/*"]
},[
"requestHeaders",
"blocking"
]);
Run Code Online (Sandbox Code Playgroud)
该filterObject告诉它只是火把手任何匹配列表中的人的URL.
它extraInfoArray告诉你想要获取requestHeaders,并blocking告诉它暂停请求直到句柄完成.
| 归档时间: |
|
| 查看次数: |
3665 次 |
| 最近记录: |