Я только что понял, что 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