我正在尝试将“Referer”-HTTP-Header 添加到我的 Chrome 扩展程序中的某些 AJAX 请求。您不能直接在 AJAX 请求中更改它,所以我尝试使用webRequest api更改它:
chrome.webRequest.onBeforeSendHeaders.addListener(function(data) {
console.log("onBeforeSendHeaders fired");
var xdata=data.requestHeaders;
xdata.push({
"name":"Referer",
"value": "http://the.new/referrer"
})
return {requestHeaders: xdata};
}, { //Filter
urls: ["<all_urls>"], //For testing purposes
types: ["xmlhttprequest"]
},["requestHeaders","blocking"]);
但这不适用于我的扩展程序中的 AJAX 请求。它只在其他 AJAX 请求上触发事件,而不是在我的扩展中完成的那些。
另一个奇怪的事情是,当没有设置“阻塞”标志时一切正常,但是我无法更改标题。
有谁知道解决这个问题的方法(或实现我目标的另一种方法:更改站点请求的“引用者”并检索内容)
谢谢 :)