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

Да, и еще хорошая практика не использовать библиотеки где можно

и так хорошо обойтись встроенными возможностями js.
Зачем вам axios если есть fetch?

30 ответов

19 просмотров

нужно два инстанса на подменные апи

fetch не покрывает базовые потребности работы с апи, поэтому для него тоже понадобится обертка

Andrey-Bondarenko Автор вопроса
Artyom Tuchkov
fetch не покрывает базовые потребности работы с ап...

А какие для примера могут возникнуть еще потребности?

Andrey Bondarenko
А какие для примера могут возникнуть еще потребнос...

хотя бы выброс ошибок при 400-500 кодах, фетч этого не умеет

fetch умеет в интерцепторы, в baseUrl? Fetch умеет автоматом парсить json и ловиться с помощью try catch? Зачем каждый раз писать для него обертку, если можно заюзать аксиос

Andrey-Bondarenko Автор вопроса
Artyom Tuchkov
хотя бы выброс ошибок при 400-500 кодах, фетч этог...

Ну так можно проверить if(!response.ok) throw new Error(response.statusText);

Andrey Bondarenko
Ну так можно проверить if(!response.ok) throw new...

верно, а еще можно написать свои интерсепторы, а еще можно написать автоматическое раскрытие .json(), а еще.. о, вот и обертка готова

Andrey-Bondarenko Автор вопроса
Max Kiner
fetch умеет в интерцепторы, в baseUrl? Fetch умеет...

Кто мешает сделать константы для BASE_URL и для всех точек входа и вводить их при запросе?

Andrey-Bondarenko Автор вопроса
Andrey Bondarenko
Кто мешает сделать константы для BASE_URL и для вс...

зачем всем этим заниматься, тратить время и тестировать, если за тебя это уже сделали? ты ничего не выиграешь, кроме того, что повторишь сделанную работу

Andrey Bondarenko
Кто мешает сделать константы для BASE_URL и для вс...

или просто подключить axios где всё изначально есть, всё отлажено, где точно всё будет работать, да?

Andrey-Bondarenko Автор вопроса
Max Kiner
fetch умеет в интерцепторы, в baseUrl? Fetch умеет...

fetch умеет парсить много форматов и если при вызове json - json не валидный, то ошибка выбрасывается и ловится в try/catch

Andrey-Bondarenko Автор вопроса
Artyom Tuchkov
зачем всем этим заниматься, тратить время и тестир...

Так в том то и дело что мне ничего прикручивать не надо. Максимум закрепить некоторые поля при POST запросе

Andrey Bondarenko
fetch умеет парсить много форматов и если при вызо...

имело ввиду не тупо 500 словить а с пробросом уже готового респонса

Andrey Bondarenko
fetch умеет парсить много форматов и если при вызо...

Большинство ошибок кетчем у него не ловятся, для их отлова нужно писать функцию/класс обертку, и в итоге получается этот же аксиос, только кастрированный

Andrey-Bondarenko Автор вопроса
Max Kiner
А что мешает заюзать готовую обертку?)

Вы на любой случай жизни используете готовую библиотеку?)

Andrey-Bondarenko Автор вопроса
Andrey Bondarenko
Нукс расскажите что не ловится catch)

тебе сервер вернул 400 ошибку, по дефолту фетч не свалится с ошибкой

Andrey Bondarenko
Вы на любой случай жизни используете готовую библи...

Если бизнес не требует самописное решение - да

Andrey-Bondarenko Автор вопроса
Artyom Tuchkov
тебе сервер вернул 400 ошибку, по дефолту фетч не ...

Мне нужно сделать однострочную проверку с выбросом ошибки и все

Andrey-Bondarenko Автор вопроса
Max Kiner
Если бизнес не требует самописное решение - да

Бизнес также не требует лишних зависимостей

Andrey Bondarenko
Мне нужно сделать однострочную проверку с выбросом...

а еще пробросить кучу данных в эту ошибку, чтобы они были доступны в catch’е, а еще выяснить, почему у тебя запрос свалился с ошибкой - это сервер умер и это нативная ошибка фетча, либо это сервер вернул 400/500-ые коды и вот уже не 1 строчка, и даже не 3

Andrey-Bondarenko Автор вопроса
Artyom Tuchkov
а еще пробросить кучу данных в эту ошибку, чтобы о...

Зачем кучу данных? Достаточно текста ошибки. У меня есть AlertError это ошибка которую нужно показать пользователю и встроенная ошибка которую не нужно показывать. С сервера приходит только то что нужно показать. Ошибка fetch не покажется.

Andrey Bondarenko
Мне нужно сделать однострочную проверку с выбросом...

ну и не стоит забывать, что фетч до сих пор не научился в отслеживание прогресса загрузки, поэтому если тебе понадобится такая фича, то тебе придется выкинуть фетч на помойку

Andrey Bondarenko
Зачем кучу данных? Достаточно текста ошибки. У мен...

интересно, а код уже в catch не нужен? а response? а если нужно что-то большее, чем показать текст? обработка ошибок далеко не всегда заключается в том, чтобы показать тост юзеру

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

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

а через ESC-код ?
Alexey Kulakov
29
30500 за редактор? )
Владимир
47
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
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
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
6
в JclConsole объявлено так: function CtrlHandler(CtrlType: DWORD): BOOL; stdcall; - где ваше объявление с stdcall? у вас на картинке нет stdcall
Karagy
8
Ребят в СИ можно реализовать ООП?
Николай
33
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
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
Карта сайта