16 июня 2026 года Интернет-инженерный комитет (IETF) официально опубликовал документ RFC 10008, закрепляющий статус предлагаемого стандарта за новым методом запроса HTTP QUERY. Данная спецификация призвана устранить многолетние ограничения существующих методов передачи данных в веб-протоколах. Введение QUERY предоставляет разработчикам стандартизированный механизм для выполнения сложных поисковых операций и запросов на чтение, которые требуют передачи значительного объема параметров в теле сообщения, сохраняя при этом высокие стандарты безопасности и производительности.
Технические особенности и преимущества метода QUERY
Ключевая инновация метода QUERY заключается в объединении преимуществ существующих методов GET и POST. Ранее разработчики часто сталкивались с ограничениями длины URL при использовании GET для передачи сложных фильтров, либо были вынуждены использовать POST, который по своей архитектуре предназначен для изменения состояния данных на сервере.
Новый стандарт решает эти проблемы следующим образом:
- Безопасность и идемпотентность: в отличие от POST, метод QUERY является идемпотентным и «безопасным» (safe), что гарантирует отсутствие побочных эффектов на сервере при повторном выполнении запроса.
- Наличие тела запроса: стандарт позволяет передавать параметры запроса непосредственно в теле сообщения, что снимает ограничения на объем передаваемой информации.
- Поддержка кэширования: ответы на запросы QUERY могут кэшироваться промежуточными узлами и браузерами, что значительно оптимизирует нагрузку на инфраструктуру.
Взаимодействие клиента и сервера в рамках нового стандарта
Спецификация RFC 10008 вводит дополнительные механизмы для согласования контента между клиентом и сервером. В частности, представлено новое поле заголовка ответа Accept-Query. С его помощью сервер может информировать клиента о том, какие именно форматы данных (например, JSON, XML или специфические языки запросов) поддерживаются для обработки в теле метода QUERY.
Для упрощения миграции на новый стандарт предусмотрено использование заголовка Allow, через который сервер заявляет о поддержке QUERY в списке доступных методов для конкретного ресурса. Это обеспечивает гибкость при проектировании современных API и позволяет постепенно внедрять функциональность в существующие веб-сервисы без нарушения обратной совместимости.
Публикация RFC 10008 знаменует важный этап в эволюции протокола HTTP, предоставляя индустрии долгожданный инструмент для работы с большими наборами входных данных без ущерба для семантики веба. Ожидается, что в ближайшее время начнется активное внедрение поддержки HTTP QUERY в популярные веб-серверы, прокси-системы и библиотеки для разработки программного обеспечения, что заложит основу для создания более эффективных и структурированных интерфейсов прикладного программирования.