Использование fetch в расширении chrome не включает заголовок referer в запрос - PullRequest
0 голосов
/ 05 декабря 2018

Обычно при использовании fetch с веб-сайта для отправки запроса заголовок реферера включается в запрос в зависимости от referrer-policy

для расширения Chromeфоновый скрипт, я пробовал с referrer в качестве клиента и referrerPolicy как unsafe-url, origin и origin-when-cross-origin.В моем манифесте у меня есть URL-адрес конечной точки в разрешении, но не все URL-адреса.

fetch(url, {
    method: 'POST',
    mode: 'cors',
    credentials: 'include',
    cache: 'no-cache',
    headers: { 
      'Content-Type': 'application/x-www-form-urlencoded',
    },
    referrer: 'client',
    referrerPolicy: 'origin',
    body: JSON.stringify({ params })
  })

1 Ответ

0 голосов
/ 15 мая 2019

Насильственное разрешение:

chrome.webRequest.onBeforeSendHeaders.addListener(
  function(details) {
    details.requestHeaders.push({name: 'Referer', value:'http://localhost/referer'});
    return {requestHeaders: details.requestHeaders};
  },
  {urls: ["http://localhost/*"]},
  ["blocking", "requestHeaders"]
);


fetch('http://localhost/')
...