RFC: 2068
Оригинал: Hypertext Transfer Protocol - HTTP/1.1
Другие версии: RFC 2616
Категория: Предложенный стандарт
Дата публикации:
Авторы: , , , ,
Перевод: Алексей Симонов

9.5. POST

Метод POST используется для запроса, при котором адресуемый сервер принимает объект, включенный в запрос, как новое подчинение ресурса, идентифицированного запрашиваемым URI (Request-URI) в строке запроса (Request-Line). POST разработан для того, чтобы общим методом реализовать следующие функции:

  • Аннотация существующих ресурсов;
  • Регистрация сообщения на электронной доске объявлений (bulletin board), в конференции новостей (newsgroup), списке рассылки (mailing list), или подобной группе статей;
  • Передача блока данных, например результат ввода в форме, процессу обработки;
  • Расширение базы данных посредством конкатенирующей операции (append operation).

Фактически функция, выполняемая методом POST, определяется сервером и обычно зависит от запрашиваемого URI (Request-URI). Объект, передаваемый методом POST, относится к этому URI таким же образом, как файл относится к каталогу, в котором он находится, статья относится к конференции новостей (newsgroup), в которой она зарегистрирована, а запись относится к базе данных.

Действие, выполняемое методом POST может не давать в качестве результата ресурс, который можно было бы идентифицировать URI. В этом случае, в зависимости от того, включает ли ответ объект, описывающий результат, или нет, код состояния в ответе может быть как 200 (OK), так и 204 (Нет содержимого, No Content).

Если ресурс был создан на первоначальном сервере, ответу СЛЕДУЕТ содержать код состояния 201 (Создан, Created) и включать объект, который описывает состояние запроса и ссылается на новый ресурс, а также заголовок Location (смотрите раздел 14.30).

Ответы на этот метод не кэшируемы, если ответ не включает соответствующие поля заголовка Cache-Control или Expires. Однако, ответ с кодом состояния 303 (Смотреть другой, See Other) может использоваться для перенаправления агента пользователя для загрузки кэшируемого ресурса.

Запросы POST должны отвечать требованиям передачи сообщения, изложенным в разделе 8.2.

2007 - 2017 © Русские переводы RFC, IETF, ISOC.