写点什么

在 Flutter 中发出 HTTP 请求的最佳库(2022 年)

作者:坚果
  • 2022 年 1 月 08 日
  • 本文字数:1550 字

    阅读完需:约 5 分钟

在 Flutter 中发出 HTTP 请求的最佳库(2022 年)

作者:坚果

华为云享专家,InfoQ 签约作者,阿里云专家博主,51CTO 博客首席体验官,开源项目 GVA 成员之一,专注于大前端技术的分享,包括 Flutter,小程序,安卓,VUE,JavaScript。


本文将向您介绍最好的开源软件包列表,这些软件包可以帮助我们在 Flutter 应用程序中发出 HTTP 请求。事不宜迟,让我们探索重要的事情。

Http


该包由 Dart 团队发布,目前是 pub.dev 上最受欢迎的 HTTP 包。它提供了一个高级 API,可以让您在处理网络任务时更轻松。您可以通过运行以下命令来安装它:


flutter pub add http
复制代码


示例用法:


import 'package:http/http.dart' as http;
void sendPostRequest() async { final url = Uri.parse('https://test.kindacode.com/api/v3/'); final response = await http.post(url, body: {'email': 'example@kindacode.com', 'name': 'Mr Happy'}); print('Response status: ${response.statusCode}'); print('Response body: ${response.body}');}
复制代码


该插件支持重试请求。您可以使用 RetryClient 类重试失败的请求:


import 'package:http/http.dart' as http;import 'package:http/retry.dart';
Future<void> bootstrap() async { final client = RetryClient(http.Client()); try { print(await client.read(Uri.parse('http://test.kindacode.com/api/v3/'))); } finally { client.close(); }}
复制代码

Dio


Dio 是 Flutter 生态系统中增长最快的 HTTP 包。它超级强大且易于使用。该软件包为我们带来了许多非常有用的功能:


  • 全局配置

  • 拦截器

  • 表单数据

  • 取消请求

  • 重试请求

  • 文件下载

  • 暂停

  • HTTPS 证书验证

  • Http2


您可以通过运行以下命令安装 Dio:


flutter pub add dio
复制代码


无需编写太多代码即可使用它:


import 'package:dio/dio.dart';
void getData() async { try { var response = await Dio().get('http://www.example.com'); print(response); } catch (e) { print(e); }}
复制代码


Dio 有几个扩展:


Retrofit


Retrofit 是一个类型转换的 dio 客户端生成器。它可以让你在 TypeScript 中使用类似装饰器的**@Something**编写代码。例如:


@JsonSerializable()class MyClass {}
@PATCH("your-api-endpoint")Future<Task> updateTaskPart( @Path() String id, @Body() Map<String, dynamic> map);
@PUT("your-api-endpoint")Future<Task> updateTask(@Path() String id, @Body() Task task);
@DELETE("your-api-endpoint")Future<void> deleteTask(@Path() String id);
@POST("your-api-endpoint")Future<Task> createTask(@Body() Task task);
复制代码


有关详细信息,请参阅API reference

Chopper


与 Retrofit 类似,Chopper 是 Dart 和 Flutter 的另一个 HTTP 客户端生成器。您将需要安装chopperchopper_generatorbuild_runner。有关使用 Chopper 的更多详细信息,请参阅其官方文档

总结

我们已经浏览了 Flutter 最受欢迎的 HTTP 客户端插件列表。如果您想获得更多关于 Flutter 的知识并探索更多新奇有趣的东西以更好地使用该框架,可以关注我的公众号,我的公众号里面有更多细节。


大家的点赞,收藏是对坚果的最大支持

发布于: 刚刚阅读数: 2
用户头像

坚果

关注

此间若无火炬,我便是唯一的光 2020.10.25 加入

公众号:“坚果前端”,华为云享专家,InfoQ签约作者,51CTO博客首席体验官,专注于大前端技术的分享,包括Flutter,小程序,安卓,VUE,JavaScript。

评论

发布
暂无评论
在 Flutter 中发出 HTTP 请求的最佳库(2022 年)