Я разрабатываю приложение RESTful, которое интегрируется с другими веб-сервисами.
У меня вопрос: какой HTTP-статус я должен вернуть, если мой клиент публикует недопустимые данные для одного из этих веб-сервисов? Например, если он публикует недопустимое имя для веб-службы, которую использует мое приложение, какой из 4 ** кодов состояния я должен вернуть, учитывая, что это ошибка ввода пользователя?
Некоторые соображения, которые я высказал, и почему мне неудобно их использовать:
- 400: данные недействительны, но не сам формат запроса
- 403: сервер не отказывается отвечать, хотя данные недействительны
- 406: ошибка в предоставленном параметре, а не в заголовке "accept"
- 412: ошибка не имеет ничего общего с заголовком «If-Match»
Итак, что бы вы использовали в этом случае?