GET: обычно используется для отправленных поисковых запросов или любого запроса, в котором вы хотите, чтобы пользователь мог снова открыть ту же страницу.
POST: используется для запросов с более высоким уровнем безопасности, когда данные могут использоваться для изменения базы данных или страницы, которую вы не хотите, чтобы кто-то добавлял в закладки.
9.3 ПОЛУЧИТЬ
Метод GET означает получение любой информации (в форме объекта), идентифицированной Request-URI. Если Request-URI относится к процессу создания данных, то в качестве объекта в ответе должны быть возвращены произведенные данные, а не исходный текст процесса, если только этот текст не является выходом процесса.
Семантика метода GET изменяется на «условный GET», если сообщение запроса включает поле заголовка If-Modified-Since, If-Unmodified-Since, If-Match, If-None-Match или If-Range. Условный метод GET требует, чтобы объект был передан только при обстоятельствах, описанных в полях условного заголовка. Условный метод GET предназначен для уменьшения ненужного использования сети, позволяя обновлять кэшированные объекты без необходимости многократных запросов или передачи данных, уже хранящихся у клиента.
Семантика метода GET изменяется на «частичный GET», если сообщение запроса включает поле заголовка Range. Частичный GET запрашивает передачу только части объекта, как описано в разделе 14.35. Метод частичного GET предназначен для уменьшения ненужного использования сети, позволяя завершить частично извлеченные объекты без передачи данных, уже хранящихся у клиента.
Ответ на запрос GET кэшируется тогда и только тогда, когда он соответствует требованиям к HTTP-кешированию, описанным в разделе 13.
См. Раздел 15.1.3 для ознакомления с соображениями безопасности при использовании для форм.
9.5 POST
Метод POST используется для запроса, чтобы исходный сервер принял объект, заключенный в запросе, как новый подчиненный ресурс, идентифицированный Request-URI в строке запроса. POST разработан, чтобы позволить единообразному методу охватывать следующие функции:
Аннотация существующих ресурсов;
Размещение сообщения на доске объявлений, в группе новостей, в списке рассылки или в аналогичной группе статей;
Предоставление блока данных, например результата отправки формы, процессу обработки данных;
Расширение базы данных с помощью операции добавления.
Фактическая функция, выполняемая методом POST, определяется сервером и обычно зависит от Request-URI. Опубликованный объект подчиняется этому URI так же, как файл подчиняется каталогу, содержащему его, новостная статья подчиняется группе новостей, в которую она размещена, или запись подчиняется базе данных.
Действие, выполняемое методом POST, может не привести к ресурсу, который можно идентифицировать с помощью URI. В этом случае подходящим статусом ответа является либо 200 (ОК), либо 204 (Нет содержимого), в зависимости от того, включает ли ответ сущность, описывающую результат.