Например, jQuery имеет следующие два конкретных обратных вызова при выполнении запросов Ajax:
успех
: Срабатывает, когда вместе с ответом доставляется код состояния 200 / 2xx.
ошибка
: срабатывает, когда 4xx, 5xx и т. Д., коды состояния возвращаются с ответом.
Если пользователь пытается создать новый объект «Человек», я отправляю обратно JSON-представление вновь созданного объекта в случае успеха, тем самым предоставляя javascript доступ к необходимым уникальным идентификаторам для нового объекта и т. Д. Это, конечно, , отправляется с кодом состояния 200.
Если пользователь отправляет искаженные или недопустимые данные (например, недопустимое / неполное поле «имя»), я хотел бы отправить обратно сообщения об ошибках проверки через JSON. (Я не понимаю, почему это было бы плохо).
Мой вопрос: при этом должен ли я отправлять код состояния 200 , потому что я успешно обработал их недопустимые данные? Поэтому я бы использовал обратный вызов jQuery success
, но просто проверял наличие ошибок ...
Или , следует ли мне использовать код состояния 4xx , возможно, «Плохой запрос», потому что данные, которые они отправили мне, недействительны? (и, таким образом, используйте обратный вызов error
для выполнения необходимых уведомлений на стороне клиента).