Вы можете изменить значение из referrer в HTTP-заголовке с использованием API веб-запроса.
Для этого требуется фоновый js-скрипт. Вы можете использовать onBeforeSendHeaders, поскольку он изменяет заголовок перед отправкой запроса.
Ваш код будет выглядеть примерно так:
chrome.webRequest.onBeforeSendHeaders.addEventListener(function(details){
var newRef = "http://new-referer/path";
var hasRef = false;
for(var n in details.requestHeaders){
hasRef = details.requestHeaders[n].name == "Referer";
if(hasRef){
details.requestHeaders[n].value = newRef;
break;
}
}
if(!hasRef){
details.requestHeaders.push({name:"Referer",value:newRef});
}
return {requestHeaders:details.requestHeaders};
},
{
urls:["http://target/*"]
},
[
"requestHeaders",
"blocking"
]);
URLs: Он действует как фильтр запроса и вызывает слушателя только для определенных запросов.
Для получения дополнительной информации: https://developer.chrome.com/extensions/webRequest
Это предложение было задано раньше: http://stackoverflow.com/questions/220231/accessing-http-headers-in-javascript –
Вы не можете этого сделать. –
@TiesonT. На самом деле, этот вопрос касается доступа к HTTP-заголовкам, а не переопределения заголовка «Referer». –