Flutter 网络请求框架dio使用分析

it2024-01-03  64

Flutter 网络请求框架dio使用分析

import 'dart:ffi'; import 'package:dio/dio.dart'; import 'package:flutter/material.dart'; import 'dart:convert'; void main() { runApp(MyApp()); } class MyApp extends StatelessWidget { const MyApp({Key key}) : super(key: key); @override Widget build(BuildContext context) { return MaterialApp( title: 'hello', home: Scaffold( appBar: AppBar( title: Text("网络请求dio "), ), body: HomePage(), ), ); } } class HomePage extends StatefulWidget { HomePage({Key key}) : super(key: key); @override _HomePageState createState() => _HomePageState(); } class _HomePageState extends State<HomePage> { String result = '发起请求'; @override Widget build(BuildContext context) { return Container( child: Row( children: [ Column( mainAxisAlignment: MainAxisAlignment.center, crossAxisAlignment: CrossAxisAlignment.center, children: [ FlatButton( color: Colors.pink, onPressed: () { getHttp(); }, child: Text('ffhfh'), ), SizedBox( height: 50, ), Expanded(child: Text('请求的数据$result')), Text('$result.id') ], ), ], ), ); } void getHttp() async { try { Response response = await Dio().get("http://10.0.2.2:3000/user"); print(response); var data = response.data; List list = json.decode(data); List<Bean> datas = list.map((b) => Bean.fromJson(b)).toList(); print('data ....lenght ${datas.length}'); setState(() { result = data.toString(); }); } catch (e) { print('diso ............' + e.toString()); } } }

AppBar

text

Container

img

Flexidble

Button

圆角图片 圆角头像

ListView.build

最新回复(0)