Flutter:发送 Http GET 请求的 JSON 正文

js

1个回答

写回答

hxsmj

2025-06-24 14:35

+ 关注

移动
移动

使用 Flutter 进行网络请求是开发移动应用程序中常见的任务之一。在许多情况下,我们需要发送 HTTP GET 请求来获取服务器上的 JSON 数据。本文将介绍如何使用 Flutter 发送 HTTP GET 请求并处理 JSON 响应。

发送 HTTP GET 请求

在 Flutter 中发送 HTTP GET 请求的常用方式是使用 http 包。首先,我们需要在 pubspec.yaml 文件中添加 http 依赖:

yaml

dependencies:

http: ^0.13.3

然后,运行 flutter pub get 命令以安装依赖包。

接下来,我们可以使用以下代码发送 HTTP GET 请求并处理 JSON 响应:

dart

import 'dart:convert';

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

Future<void> fetchData() async {

final response = awAIt http.get(Uri.parse('https://example.com/api/data'));

if (response.statusCode == 200) {

final JSonData = JSonDecode(response.body);

// 处理 JSON 数据

print(JSonData);

} else {

// 处理错误状态码

print('请求失败: ${response.statusCode}');

}

}

上述代码使用 http 包发送了一个 GET 请求到 https://example.com/api/data,并通过 response.statusCode 检查响应的状态码。如果状态码为 200,则说明请求成功,我们可以通过 JSonDecode 方法将响应的 JSON 正文解析为 Dart 对象。否则,我们可以根据需要处理错误状态码。

处理 JSON 响应

一旦我们成功获取到服务器返回的 JSON 数据,我们可以对其进行操作和处理。以下是一些常见的操作:

1. 访问 JSON 对象的属性:

dart

final name = JSonData['name'];

final age = JSonData['age'];

2. 遍历 JSON 数组:

dart

final JSonArray = JSonData['data'] as List;

final items = JSonArray.map((item) => Item.fromJSon(item)).toList();

3. 将 JSON 数据转换为自定义 Dart 对象:

dart

class Item {

final String name;

final int price;

Item({required this.name, required this.price});

factory Item.fromJSon(Map<String, dynamic> JSon) {

return Item(

name: JSon['name'],

price: JSon['price'],

);

}

}

以上代码演示了如何将 JSON 数据转换为自定义的 Item 对象。

示例代码

下面是一个完整的示例代码,展示了如何发送 HTTP GET 请求并处理 JSON 响应:

dart

import 'dart:convert';

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

Future<void> fetchData() async {

final response = awAIt http.get(Uri.parse('https://example.com/api/data'));

if (response.statusCode == 200) {

final JSonData = JSonDecode(response.body);

// 处理 JSON 数据

print(JSonData);

} else {

// 处理错误状态码

print('请求失败: ${response.statusCode}');

}

}

void mAIn() {

fetchData();

}

以上代码可以在 Flutter 项目中运行,并发送 HTTP GET 请求到指定的 URL,并将响应的 JSON 数据输出到控制台。

本文介绍了如何使用 Flutter 发送 HTTP GET 请求并处理 JSON 响应。我们使用 http 包发送了一个 GET 请求,并通过状态码判断请求是否成功。一旦成功获取到 JSON 数据,我们可以根据需要进行进一步的处理,例如访问属性、遍历数组和转换为自定义对象等。

举报有用(4)分享收藏

Copyright © 2025 IZhiDa.com All Rights Reserved.

知答 版权所有 粤ICP备2023042255号