Dart中发起网络请求可以使用io库或者一些其他封装好的库,例如http库。只要是HttpCLient类。
io库的基本使用
基本使用步骤:
- 创建HttpClient实例
HttpClient httpClient = HttpClient();
- 使用httpClient打开一个连接,这个链接可以使用任何http请求方法打开:
HttpClientRequest httpRequest = await httpClient.get(
"baidu.com",
80,
"/",
);
如果需要,还可以设置请求头,方法是
httpRequest.header.add(name, value)
;
- 发送请求
HttpClientResponse response = await httpRequest.close();
4.获取响应体:
String body = await response.transform(utf8.decoder).join();
最后一步,关闭httpClient:httpClient.close();
http库的基本使用
http库封装了底层api,类似于axios,使用起来比较方便
例如:
import 'package:http/http.dart' as http;
var url = 'https://example.com/whatsit/create';
var response = await http.post(url, body: {'name': 'doodle', 'color': 'blue'});
这样就完成了上边一大串才能完成的操作。
另外一点,这个库与axios一样,既能发起服务器端请求,也能发起浏览器端请求。