Dart的HTTP请求和响应(1)

本文展示了如何使用Dart语言进行HTTP GET和POST请求,并解析JSON数据。包括简单的GET请求、POST请求及JSON数据展示。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

GET请求

在上代码之前,先把所需要的http包分享出来http://pan.baidu.com/s/1jGH2zgq

import 'package:http/http.dart' as http;

main(List<String> arguments) {
  var url = 'http://httpbin.org/';
  //向指定URL发送GET请求
  http.get(url).then((response) {
    print("响应状态: ${response.statusCode}");
    print("响应正文: ${response.body}");
  });
}

代码很简单,效果如下
这里写图片描述

POST请求

import 'package:http/http.dart' as http;

main(List<String> arguments) {
  var url = 'http://httpbin.org/post';
  //向指定URL发送带参数的POST请求
  http.post(url ,body: 'name=doodle&color=blue').then((response) {
    print("响应状态: ${response.statusCode}");
    print("响应正文: ${response.body}");
  });
}

这也很简单,效果如下
这里写图片描述

展示JSON数据

import 'dart:convert';
import 'package:http/http.dart' as http;

main(List<String> arguments) {
  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<String> 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数据
这里写图片描述
这样就好看多了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值