📜  pub http - Dart (1)

📅  最后修改于: 2023-12-03 15:33:48.692000             🧑  作者: Mango

介绍 Dart 的 pub http 库

在 Dart 中处理 HTTP 请求和响应的最简单方式是使用内置的 http 库。该库提供了许多方便的类和方法,可用于构建基于 Dart 的 Web 应用程序。

安装

要使用 http 库,需要将其添加为 Dart 项目的依赖项。可以通过在项目目录中打开终端并运行以下命令来完成此操作:

dart pub add http

这将在项目的 pubspec.yaml 文件中添加 http 库的依赖项。

使用

在项目中添加库之后,即可开始使用它来处理 HTTP 请求和响应。下面是 http 库的一些常见用法:

发送 GET 请求
import 'package:http/http.dart' as http;

void main() async {
  var response = await http.get(Uri.parse('https://jsonplaceholder.typicode.com/posts/1'));
  print(response.body);
}

在此示例中,我们使用 get 函数发送 HTTP GET 请求,并打印响应正文。

发送 POST 请求
import 'package:http/http.dart' as http;

void main() async {
  var response = await http.post(Uri.parse('https://jsonplaceholder.typicode.com/posts'), body: {'title': 'foo', 'body': 'bar', 'userId': '1'});
  print(response.statusCode);
}

在此示例中,我们使用 post 函数发送 HTTP POST 请求,并打印响应状态码。

发送带有 Headers 的请求
import 'package:http/http.dart' as http;

void main() async {
  var headers = {'Authorization': 'Bearer my_token'};
  var response = await http.get(Uri.parse('https://api.example.com/data'), headers: headers);
  print(response.body);
}

在此示例中,我们使用 get 函数发送 HTTP GET 请求,并传递一个包含 Authorization header 的 headers 参数。

处理错误
import 'package:http/http.dart' as http;

void main() async {
  try {
    var response = await http.get(Uri.parse('https://jsonplaceholder.typicode.com/posts/999'));
    print(response.body);
  } catch (error) {
    print(error);
  }
}

在此示例中,我们使用 try-catch 块处理可能发生的异常。

总结

http 库是 Dart 中处理 HTTP 请求和响应的简单且强大的方式。使用该库,可以轻松地发送和接收 Web 服务的数据。以上只是 http 库的一些示例用法,该库还提供了许多其他功能,如连接池、Cookie 管理、文件上传等。要了解更多信息,请查看官方文档:https://pub.dev/packages/http