170 похожих чатов

⚡️Всем привет. Проектирую апи для сайта (апи не публичное). Думаю

как лучше обрабатывать ошибки:
1) Возвращать BadRequest("Ошибка такая-то.")
2) Возвращать Ok(), но с ним передавать объект типа Error{Message = "ошибка такая-то", data= {someDataHere}}.

Подскажите пожалуйста, как это правильнее делать, может есть какие-то стандарты?

9 ответов

9 просмотров

На вкус и цвет, лишь бы 1) Это было задокументировано 2) Это было универсально (чтобы все части апи, по возможности, одинаково сообщали об ошибках). Но, имхо, BadRequest - это когда что-то не так с запросом, а не для ошибок во время обработки корректного запроса

я делаю так catch(Exception ex) { return BadRequest(ex); }

SomebodyOdd
На вкус и цвет, лишь бы 1) Это было задокументиров...

Ну это Rest подход, так делать,) хотя имхо так себе решение

Oleg Safonov
Ну это Rest подход, так делать,) хотя имхо так себ...

Если кому-то хочется кушать кактус, не смею мешать, могу даже ложечку подать. Сам предпочитаю GraphQL

мы для этого свои 5** делали

Alex- Автор вопроса
Larymar GC
мы для этого свои 5** делали

5**? Что-то не понимаю, что это значит👉👈

Если хочется совсем по-православному сделать, то опирайся на RFC: https://datatracker.ietf.org/doc/html/rfc2616

Похожие вопросы

Обсуждают сегодня

30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
13
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
6
в JclConsole объявлено так: function CtrlHandler(CtrlType: DWORD): BOOL; stdcall; - где ваше объявление с stdcall? у вас на картинке нет stdcall
Karagy
8
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
program test; {$mode delphi} procedure proc(v: int32); overload; begin end; procedure proc(v: int64); overload; begin end; var x: uint64; begin proc(x); end. Уж не знаю...
notme
6
Карта сайта