Код состояния HTTP для "требуемого обновления программного обеспечения клиента" - что использовать?

Какой код статуса HTTP мне нужно вернуть, чтобы указать "требуется обновление программного обеспечения для клиента"? Например, сервер изменил формат данных, которые он использовал для обслуживания, и старые клиенты не смогут работать с этим, поэтому клиент должен обновиться, чтобы использовать новые данные.

Я не хочу использовать 404 или 410, потому что хочу указать, что это все еще допустимый путь. 415? Не уверен.

Ответ 1

Большинство комментаторов обеспокоено тем, что вы нарушаете старые клиенты при использовании того же URI, что является разумной проблемой. Вот почему многие API-интерфейсы управляются версиями в самих URI.

Тем не менее, почему не только 400? Запрос пришел от старого клиента, так что это плохой запрос.

Ответ 2

Если он все еще является допустимым путем, ваш сервер должен продолжать его поддерживать, вместо указания ошибки.

Кажется, что вы задаете неправильный вопрос: -)

Ответ 3

426 Необходимое обновление

https://en.wikipedia.org/wiki/List_of_HTTP_status_codes

426 Требуется обновление Клиент должен переключиться на другой протокол, такой как TLS/1.0, указанный в поле заголовка Upgrade.