📅  最后修改于: 2023-12-03 15:33:48.692000             🧑  作者: Mango
在 Dart 中处理 HTTP 请求和响应的最简单方式是使用内置的 http
库。该库提供了许多方便的类和方法,可用于构建基于 Dart 的 Web 应用程序。
要使用 http
库,需要将其添加为 Dart 项目的依赖项。可以通过在项目目录中打开终端并运行以下命令来完成此操作:
dart pub add http
这将在项目的 pubspec.yaml
文件中添加 http
库的依赖项。
在项目中添加库之后,即可开始使用它来处理 HTTP 请求和响应。下面是 http
库的一些常见用法:
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 请求,并打印响应正文。
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 请求,并打印响应状态码。
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。