本文共 1338 字,大约阅读时间需要 4 分钟。
在上代码之前,先把所需要的http包分享出来
import 'package:http/http.dart' as http;main(Listarguments) { var url = 'http://httpbin.org/'; //向指定URL发送GET请求 http.get(url).then((response) { print("响应状态: ${response.statusCode}"); print("响应正文: ${response.body}"); });}
代码很简单,效果如下
import 'package:http/http.dart' as http;main(Listarguments) { var url = 'http://httpbin.org/post'; //向指定URL发送带参数的POST请求 http.post(url ,body: 'name=doodle&color=blue').then((response) { print("响应状态: ${response.statusCode}"); print("响应正文: ${response.body}"); });}
这也很简单,效果如下
import 'dart:convert';import 'package:http/http.dart' as http;main(Listarguments) { var url = 'https://api.github.com/users/dart-lang/repos'; http.get(url ,headers : { 'User-Agent':'Dart/1.0(My Dart client)'}).then((response) { //解析响应字符串,并生成Json对象 List repos = JSON.decode(response.body); //输出说明字符串 var heading = 'Repository | Star count | Fork count'; print(heading); //输出与说明字符串等长的‘=’字符串 print(new List.filled(heading.length, '=').join()); //循环输出Json对象的指定参数 for (var repo in repos) { print( "${repo['name']} | " "${repo['stargazers_count']} | " "${repo['forks_count']}"); } });}
先来看看里面的JSON字符串
晕了没,再看看代码执行后展示的部分JSON数据 这样就好看多了