如何在 dart 中实现可在移动设备和 Web 上运行的 http 客户端?

问题描述 投票:0回答:2

我知道我可以使用 http::BrowserClient 用于 web,我可以使用 http::Client 用于 ios 和 android,但我不能同时使用一个库!

拥有一个适用于所有 3 个平台的 http 客户端的标准实现是什么?

dart cross-platform dart-html dart-http
2个回答
0
投票

可以使用 https://pub.dev/packages/universal_io 它实现了一个跨平台的移动和网络客户端。

缺点:用户群小。不导入 io 或 http 包,乍一看似乎他们从这些库中复制了相关文件,这意味着 universal_io 修复错误的速度很慢。

第二个选择 是为 BrowserClient 和 Client 编写一个包装器,根据使用 dart 基础的平台提供正确的实现。


0
投票

您可以使用 Client() 而不是使用 BrowserClient()。客户端支持 io 请求和 web 请求,因此它可以在桌面和 web 上工作。 即:-

使用--

import 'package:http/src/client.dart';

代替--

import 'package:http/browser_client.dart';

和使用

var client = Client();

代替

var client = BrowserClient();
© www.soinside.com 2019 - 2024. All rights reserved.