Получить в браузере значение заголовка Accept-Language для запроса на выборку - PullRequest
2 голосов
/ 30 сентября 2019

Я только что понял, что fetch не отправляет заголовок Accept-Language по умолчанию, поэтому я планирую добавить это. Однако я не нашел способа получить строку, которую должен сгенерировать браузер.

Например, в моем браузере все обычные запросы имеют хорошее значение Accept-Language:

en-US, en; q = 0,9, ja; q = 0,8, vi; q = 0,7, la; q = 0,6

Моя проблема может быть решена любым из следующих способов:

  • Есть ли объявление, которое указывает браузеру включить заголовок Accept-Language с fetch?
  • Есть ли способ получить эту строку вместо генерации ее из navigator.languages? В настоящее время я использую этот метод, но я сделал это сам, и не уверен, что это излишне / плохо. Я бы предпочел использовать встроенный способ, если это возможно.
var getAcceptLanguageValue = () => {
    // Assume there are less than 10 languages
    let q = 1;

    return navigator.languages
        .slice(0, 10)
        .map(l => `${l};q=0.${10-q++}`)
        .join(",");
};

Результат, который я получаю, явно не идентичен:

en-US; q = 0,9,en; q = 0,8, ja; q = 0,7, vi; q = 0,6, la; q = 0,5

...