G>>>Ответ в стандарте — если клиент получает 400, то он не должен пытаться повторить запрос с теми же параметрами.
G>>>Это означает, что 400 нельзя кидать для ситуаций, которые могут меняться со временем и для любых rntime эксепшенов.
Y>>В стандарте одно, а в жизни другое. Например: https://github.com/IdentityServer/IdentityServer4/blob/5bcc2abbcf6c47200c4eb3b77e756f1bc0e04358/src/IdentityServer4/src/Endpoints/Results/TokenErrorResult.cs#L29
Y>>И не только тут такое практикуется.
G>Где тут возврат 400 для рантайм эксепшена?
Здесь возврат 400 для запроса, некорректного с точки зрения бизнес-логики. Запрос, который некорректен сегодня, может стать корректным завтра. И тогда его можно смело повторить и он вернёт 200.