Chrome 확장 프로그램의 특정 AJAX 요청에 'Referer'-HTTP-Header를 추가하려고합니다. 나는 webRequest api 사용하여 변경하려고, 그래서 당신은 AJAX 요청에서 직접 변경할 수 없습니다 :Chrome 확장 프로그램 : webRequest.onBeforeSendHeaders가 이상하게 동작합니다.
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 요청에 대해서만 이벤트를 발생 시키지만 내 확장에서 수행 된 이벤트는 발생시키지 않습니다.
또 다른 이상한 점은 "blocking"플래그가 설정되어 있지 않아도 모든 것이 잘 작동하지만 헤더를 변경할 수 없다는 것입니다. 그것은 작동하지 않습니다
의미 : if (name == p_name) {? – DaveWalley
@DaveWalley 네. 이제 답이 바뀌 었습니다. 감사! – Daniel