IETF представила гибридный метод QUERY.
В HTTP появился метод QUERY, который позволяет отправлять сложные запросы с телом сообщения, но не менять данные на сервере. IETF присвоила спецификации RFC 10008 статус предложенного стандарта.
GET обычно используют для чтения данных, а параметры запроса помещают в адресную строку. POST передаёт параметры в теле запроса, однако часто служит для создания или изменения записей. QUERY сочетает удобство тела запроса с безопасным характером GET: запрос можно повторить после сбоя без риска частично изменить состояние сервера.
Новый метод пригодится для Web API, поисковых форм и фильтрации данных. Вместо длинной строки вида <code>?q=foo&limit=10&sort=-published</code> клиент может передать параметры в теле запроса. Подход помогает обойти ограничения на длину адресной строки, которые встречаются у браузеров, прокси и веб-серверов. Тело запроса также реже попадает в стандартные логи прокси, хотя конфиденциальные данные всё равно не стоит передавать без защиты.
Сервер сможет сообщить о поддержке QUERY через OPTIONS, а список допустимых форматов параметров передать в заголовке Accept-Query. Спецификация допускает обычные параметры формы, JSONPath, XSLT и SQL. Результаты QUERY разрешено кэшировать: сервер или прокси может сохранить ответ, назначить отдельный URI и позднее отдать сохранённые данные через GET.
В HTTP появился метод QUERY, который позволяет отправлять сложные запросы с телом сообщения, но не менять данные на сервере. IETF присвоила спецификации RFC 10008 статус предложенного стандарта.
GET обычно используют для чтения данных, а параметры запроса помещают в адресную строку. POST передаёт параметры в теле запроса, однако часто служит для создания или изменения записей. QUERY сочетает удобство тела запроса с безопасным характером GET: запрос можно повторить после сбоя без риска частично изменить состояние сервера.
Новый метод пригодится для Web API, поисковых форм и фильтрации данных. Вместо длинной строки вида <code>?q=foo&limit=10&sort=-published</code> клиент может передать параметры в теле запроса. Подход помогает обойти ограничения на длину адресной строки, которые встречаются у браузеров, прокси и веб-серверов. Тело запроса также реже попадает в стандартные логи прокси, хотя конфиденциальные данные всё равно не стоит передавать без защиты.
Сервер сможет сообщить о поддержке QUERY через OPTIONS, а список допустимых форматов параметров передать в заголовке Accept-Query. Спецификация допускает обычные параметры формы, JSONPath, XSLT и SQL. Результаты QUERY разрешено кэшировать: сервер или прокси может сохранить ответ, назначить отдельный URI и позднее отдать сохранённые данные через GET.
- Источник новости
- www.securitylab.ru