Разница между http и HttpClient в дартс

Я пытаюсь понять разницу между пакетом http и классом HttpClient в библиотеке dart:io. Моя цель - знать, когда я должен использовать какой. Я вижу, что оба они, по-видимому, делали одно и то же.

Я видел эти вопросы и ответы:

Это то, что я считаю верным до сих пор, но мое понимание нечетко:

  • http высокий уровень и HttpClient низкий уровень ( источник)
  • http может отправлять запросы, но HttpClient не может ( источник)
  • и то и другое http а также HttpClentHttpClientRequest) может делать запросы GET и POST ( источник)
  • и то и другое http а также HttpClent можно использовать на клиенте и сервере

Подводя итог, я бы сказал, что любой из них может делать то же, что и другой, но проще использовать http пакет, так как этот более высокий уровень. Это резюме правильно?

1 ответ

Решение

http пакет является абстракцией над dart:io а также dart:html,

Так что если вы хотите обмениваться кодом между браузером и другими платформами, которые делают HTTP-запросы, то лучше использовать http пакет. Тогда код будет работать везде.

Если вы не заботитесь о браузере, используйте API, который вам больше нравится. Во флаттере http пакет просто оборачивает dart:io"s HttpClient,

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