Size: a a a

pro.rb (Ruby/Rails / RU)

2021 May 18

МВ

Максим Вейсгейм... in pro.rb (Ruby/Rails / RU)
или я тебя не так понял?
источник

RU

Roman Usherenko in pro.rb (Ruby/Rails / RU)
много факторов: публичное апи или нет, насколько сложная валидация, нужно ли поддерживать локали, знает ли бек о локалях клиента
источник

D

Dmitrii in pro.rb (Ruby/Rails / RU)
по дефолту при валидации 422 будет такой выхлоп

{
 "title": [ "can't be blank" ]
}
источник

RU

Roman Usherenko in pro.rb (Ruby/Rails / RU)
не http коды - это отдельный холивар
источник

RU

Roman Usherenko in pro.rb (Ruby/Rails / RU)
некоторые отдают только 200, 401, 500
источник

D

Dmitrii in pro.rb (Ruby/Rails / RU)
я вижу тут такие варианты
- фронт всегда занимается i18n и бэк не знает ничего о локалях, возвращает коды
- фронт рендерит сообщения об ошибках напрямую, но тогда бэк должен знать о локалях, получается i18n ответственность делится между фронтом и бэком

я просто думал здесь есть какие то сформировавщиеся best practices
источник

RU

Roman Usherenko in pro.rb (Ruby/Rails / RU)
есть, но “it depends”, в целом ты все правильно описываешь
источник

u

unkmas in pro.rb (Ruby/Rails / RU)
В варианте, когда фронт отвечает за сообщения - бывает очень непросто со старыми мобильнными клиентами
источник

u

unkmas in pro.rb (Ruby/Rails / RU)
Решили вы, наприимер, ввести ограничения за мошенничество - а на старые клиенты уже не прокинешь ошибку
источник

D

Dmitrii in pro.rb (Ruby/Rails / RU)
хороший пункт, добавлять валидации на лету без деплоя фронта
источник

RU

Roman Usherenko in pro.rb (Ruby/Rails / RU)
ну да, старые клиенты будут видеть "неизвестная ошибка, обновите клиент"
источник

u

unkmas in pro.rb (Ruby/Rails / RU)
Так тоже можно, да
источник

u

unkmas in pro.rb (Ruby/Rails / RU)
Но не всегда хорошо)
источник

RU

Roman Usherenko in pro.rb (Ruby/Rails / RU)
повторюсь, что очень многое зависит от того, публичное апи или нет
источник

u

unkmas in pro.rb (Ruby/Rails / RU)
хз, в публичном апи тоже часто бывает и код и человеческое описание
источник

u

unkmas in pro.rb (Ruby/Rails / RU)
имхо это неплохо
источник

RU

Roman Usherenko in pro.rb (Ruby/Rails / RU)
если это паблик апи, то если клиент хочет арабский язык, то выкусывать сообщения из английского не кайф
источник

RU

Roman Usherenko in pro.rb (Ruby/Rails / RU)
тоже неплохо да
источник

u

unkmas in pro.rb (Ruby/Rails / RU)
Хотя самая дичь, которую я видел, была такой: сервис всегда возвращает http 200, в теле ответа - есть status (отдать юзеру) и realStatus - для разработчиков 😄
источник

RU

Roman Usherenko in pro.rb (Ruby/Rails / RU)
ну 200 это один из вариантов нормальных
источник