Reqable实战系列:Flutter移动应用抓包调试教程
import 'package:flutter/material.dart';
import 'package:http/http.dart' as http;
void main() => runApp(MyApp());
class MyApp extends StatelessWidget {
// 此处省略其他代码...
// 添加抓包日志打印方法
void _logNetworkTraffic(String requestMethod, String url, dynamic body) {
print('$requestMethod $url with body: $body');
}
// 使用http.get请求示例
Future<void> fetchPost() async {
final response = await http.get(Uri.parse('https://jsonplaceholder.typicode.com/posts/1'));
_logNetworkTraffic('GET', 'https://jsonplaceholder.typicode.com/posts/1', response.body);
// 此处省略其他代码...
}
// 使用http.post请求示例
Future<void> createPost(String title, String body) async {
final response = await http.post(Uri.parse('https://jsonplaceholder.typicode.com/posts'),
headers: {
'Content-Type': 'application/json; charset=UTF-8',
},
body: json.encode({
'title': title,
'body': body,
}),
);
_logNetworkTraffic('POST', 'https://jsonplaceholder.typicode.com/posts', response.body);
// 此处省略其他代码...
}
}
这个示例代码展示了如何在一个Flutter移动应用中使用http
包进行HTTP请求,并在请求发送和接收数据时记录日志。这有助于开发者在进行调试时追踪网络通信情况。在实际应用中,日志记录可以更详细或者根据需要进行过滤和分类。
评论已关闭