Каково время ожидания по умолчанию для http-запросов с использованием библиотеки http dart?

Я использую библиотеку http dart для выполнения запросов REST API (GET, POST) к удаленному серверу.

Когда сервер не работает, время ожидания запросов истекает. Существует ли ограничение по времени для запросов по умолчанию, после которого выдается исключение Connection timed out? Если да, то каков этот срок?

Мы попытались зарегистрировать отметку времени до и после выполнения запроса. Разница двух временных меток составила 30 мс. Но мы не знаем, является ли это стандартной конфигурацией библиотеки dart.

0
0
74
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Тайм-аут по умолчанию для HTTP-запроса, сделанного через dart:io's HttpClient, зависит от тайм-аута по умолчанию для ОС, поэтому трудно точно сказать, какой тайм-аут следует ожидать.

Однако вы можете настроить тайм-аут, установив для connectionTimeout в экземпляре HttpClient ненулевое значение Duration, если вы хотите иметь одинаковую продолжительность тайм-аута соединения на разных платформах.

Эй, во-первых, большое спасибо за ваш ответ, он действительно помогает. Известно ли время ожидания по умолчанию на Android и iOS? А в Андроиде тоже зависит от ОС производителя?

Kon Syrokostas 25.11.2022 10:37

Тайм-ауты, вероятно, где-то доступны, но их может быть трудно найти для Android, поскольку они могут отличаться в зависимости от версии ОС/устройства. Если вы хотите, чтобы все было как можно более последовательным, я настоятельно рекомендую установить собственный тайм-аут.

Ben Konyi 29.11.2022 15:13

Другие вопросы по теме

Flutter — NoSuchMethodError (NoSuchMethodError: класс '_InternalLinkedHashMap<String, dynamic>' не имеет метода экземпляра 'map' с соответствующими аргументами
Необработанное исключение: MissingPluginException (не найдена реализация для запуска метода на канале plugins.flutter.io/url_launcher_android)
CircleAvatar как ведущий в ListTile
Как я получаю ошибку TypeObject в тесте дротика
LateInitializationError: поле «диалоговый поток» не было инициализировано
Заставка не отображается после извлечения USB из физического устройства Flutter?
Использование ListView со значением scrollDirection, установленным на Axis.horizontal внутри SimpleDialog, вызывает ошибку
Фабрика Flutter get_it еще не готова [библиотека Flutter get_it с инициализацией базы данных Floor]
Whatsapp_share2 не выбирает количество проходов трепещет
Обнаружено несколько файлов произвольной формы с одним и тем же языковым стандартом 'en'. Убедитесь, что для каждой локали существует ровно один файл произвольной формы