Какое ограничение по количеству символов в query string

«Какое ограничение по количеству символов в query string» — вопрос из категории Архитектура, который задают на 10% собеседований Frontend Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

В спецификации HTTP нет жесткого ограничения на длину query string, но браузеры и серверы могут накладывать свои лимиты.

  • Браузеры: Обычно поддерживают ~2000 символов (Chrome, Firefox, Edge).
  • Серверы: Например, Apache и Nginx по умолчанию допускают до 8190 символов, но это настраивается.

Пример:

// Длинный URL может обрезаться или вызывать ошибку  
const longQuery = '?param=' + 'a'.repeat(3000);  
fetch(`/api${longQuery}`); // Может не сработать в некоторых браузерах  

Лучше разбивать большие данные на POST-запросы или использовать кодирование (например, base64 для бинарных данных).