У нас есть RESTful API, предоставляемый через HTTP, который естественным образом использует строку состояния HTTP (код состояния и фразу-причину) для передачи клиенту результата API (http://www.w3.org/Protocols/rfc2616/rfc2616-sec6.html).
).
Например, у нас есть следующая строка состояния для ошибки параллелизма:
HTTP / 1.1 409 Ресурс обновлен другим пользователем. Перезагрузите и попробуйте снова.
Недавно выяснилось, что эти сообщения будут представлены конечным пользователям приложения, созданного на основе нашего API, что означает необходимость их локализации. Мне интересно, является ли это приемлемым подходом в таких сценариях, особенно с учетом кодировки этих сообщений, не относящихся к ASCII, или следует, чтобы фраза причины (описание статуса) оставалась только в качестве сообщения низкого уровня и любого содержимого, которое будет 'путь к экрану пользователя должен быть передан в теле ответа? Есть ли что-нибудь, что может укусить нас позже, если мы решим локализовать часть фразы-разума?
В этом случае мы хотели бы использовать тело ответа, чтобы передать новую версию ресурса клиенту API, и добавление дополнительных данных не подходит для этого.