2015-10-12 5 views
1

Какой код статуса HTTP должен быть отправлен пользователю, если его почтовый запрос верен, но в базе данных ничего не обновлялось, поскольку пользователь отправляет одно и то же значение для каждого поля, которое уже было в базе данных?Код состояния статуса Http

+0

Это для пользовательской веб-формы? Затем просто отправьте 200 OK, как всегда. Я не думаю, что есть более специализированный код состояния для случая, и браузер не сможет его понять. http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html –

+1

, но нет ответа, который должен быть отправлен пользователю, и если я отправлю 200, это означает, что пользователь обновил то, что на самом деле не произошло –

+0

Вы, d должны обрабатывать это на уровне приложения, например показывая сообщение «ничего обновить» или что-то еще. Вы должны будете больше узнать о своей ситуации для получения дополнительной информации. У вас есть веб-приложение? Или это для API? –

ответ

1

Состояние 200, безусловно, было бы вполне уместным в этом случае.

То, что вы описываете, обычно является тем, что приложение поверх HTTP-интерфейса будет обрабатывать/добавлять в качестве контекста.

Один менее известный код статуса, который может быть использован в таких случаях, однако, 204.

«204 (No Content) код состояния указывает на то, что сервер успешно выполнил запрос, и что есть нет дополнительного содержимого для возврата в тело полезной нагрузки ответа «

Другими словами, в зависимости от установки вашего приложения вы можете использовать 204 (без тела ответа), чтобы указать, что сам запрос PUT/update был успешным. но ничего не было изменено.

Смотрите здесь для дальнейшего чтения на 204: http://tools.ietf.org/html/draft-ietf-httpbis-p2-semantics-19#section-7.2.5

1

Вы будете использовать 204 в этом случае.

Сервер выполнил запрос, но ему не нужно возвращать тело сущности и может захотеть вернуть обновленную метаинформацию. Ответ МОЖЕТ включать новую или обновленную метаинформацию в виде заголовков-сущностей, которые, если они ДОЛЖНЫ быть связаны с запрошенным вариантом.

Если клиент является пользовательским агентом, ему НЕ ДОЛЖНО изменять вид своего документа, который был вызван отправкой запроса. Этот ответ в первую очередь предназначен для того, чтобы разрешить ввод действий для действий, не вызывая изменения в представлении активного документа пользовательского агента, хотя любая новая или обновленная метаинформация ДОЛЖНА применяться к документу, находящемуся в настоящее время в активном представлении агента пользователя.

Ответ 204 НЕ ДОЛЖЕН включать тело сообщения и поэтому всегда заканчивается первой пустой строкой после полей заголовка.

Смежные вопросы