powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / web api return status code
7 сообщений из 7, страница 1 из 1
web api return status code
    #38577140
handmadeFromRu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
возникла дилемма как возвращать ошибки из веб апи. есть 2 варианта:
1) делать как твитере HttpStatusCode и ошибки внутри веб апи держать отдельно т.е. твитер шлет при любом запросе 200 и в теле уже ошибку к примеру доступа. естественно у него другие коды как 400,404 и прочее есть но исключительный моментов.
2) либ основываться на HttpStatusCode, но тут свой особенности: к примеру jsonp только с 200 работает или клиенты через тот же webrequest+c# получат в ответе ошибку и им надо будет ловить в трайкече, хотя формально запрос прошел просто в веб апи методе мы написали верни к примеру 400 и потом пойми сервак упал или метод виноват.
кто реализовывал прощу поделиться опытом.
...
Рейтинг: 0 / 0
web api return status code
    #38577196
carrotik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
handmadeFromRu,

.. не знаю, верно ли это по феншую, или нет, но делаю по первому методу, т.е.
Код: c#
1.
HttpResponseMessage result = new HttpResponseMessage(HttpStatusCode.OK);



...а потом в result.Content либо контент, либо ошибку .. хотя он и сама выскакивает в Response
...
Рейтинг: 0 / 0
web api return status code
    #38577574
handmadeFromRu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ну вот в таком случае как отличить 404 когда клиент ошибся в пути от того что запрос прошел но в бд не нашлось к примеру для поиска
...
Рейтинг: 0 / 0
web api return status code
    #38577602
carrotik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
handmadeFromRuну вот в таком случае как отличить 404 когда клиент ошибся в пути от того что запрос прошел но в бд не нашлось к примеру для поиска

... ну вот реальный пример

если не правильный путь
http://www4.office/usersapi/ api2 /ats/GetPdf/47 - честный 404

если путь правильный, но индекс вне диапазона
http://www4.office/usersapi/ api /ats/GetPdf/47

{"Message":"Произошла ошибка.","ExceptionMessage":"Индекс находился вне границ массива.","ExceptionType":"System.IndexOutOfRangeException","StackTrace":"
в UsersApi.Controllers.AtsController.GetCalls(String id)
в G:\\WebAPI\\UsersApi\\UsersApi\\Controllers\\AtsController.cs:строка 45\r\n
в UsersApi.Controllers.AtsController.GetPdf(String id)
в G:\\WebAPI\\UsersApi\\UsersApi\\Controllers\\AtsController.cs:строка 128\r\n

..ну и тд ...
...
Рейтинг: 0 / 0
web api return status code
    #38577661
handmadeFromRu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
carrotik,
и при этом будет какой статус во втором случае? 400 или 500?
но тут сам по себе реквест прошел, почему бы не вернуть 200 что все с апи хорошо, а в теле отдать свою ошибку мол не найдено и все.
...
Рейтинг: 0 / 0
web api return status code
    #38577663
carrotik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
handmadeFromRucarrotik,
и при этом будет какой статус во втором случае? 400 или 500?
но тут сам по себе реквест прошел, почему бы не вернуть 200 что все с апи хорошо, а в теле отдать свою ошибку мол не найдено и все.

.. в фидлере 500 ... но я ж говорю, я не теоретик, поэтому, как правильно - фикзнает .. Сам бы хотел узнать .. :)
...
Рейтинг: 0 / 0
web api return status code
    #38577979
super-code
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
handmadeFromRu,
1 - правильный вариант.
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / web api return status code
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]