1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > Flutter进阶第1篇: http get请求数据 post提交数据 以及渲染动态数据

Flutter进阶第1篇: http get请求数据 post提交数据 以及渲染动态数据

时间:2023-02-18 12:13:06

相关推荐

Flutter进阶第1篇: http get请求数据 post提交数据 以及渲染动态数据

效果图:

导入: http: ^0.12.0+2库

Http_Back.dart

import 'package:flutter/material.dart';import 'package:http/http.dart' as http;import 'dart:convert';class HttpDemo extends StatefulWidget {HttpDemo({Key key}) : super(key: key);_HttpDemoState createState() => _HttpDemoState();}class _HttpDemoState extends State<HttpDemo> {List _list=[];@overridevoid initState() {// TODO: implement initStatesuper.initState();this._getData();}_getData() async{var apiUrl="/api/productlist";var result=await http.get(apiUrl);if(result.statusCode==200){print(result.body);setState(() {this._list=json.decode(result.body)["result"];/*{"result": [{"_id": "5ac0896ca880f20358495508","title": "精选热菜","pid": "0",}, {"_id": "5ac089e4a880f20358495509","title": "特色菜","pid": "0",}]}*/});}else{print("失败${result.statusCode}");}}@overrideWidget build(BuildContext context) {return Scaffold(appBar: AppBar(title: Text("请求数据Demo"),),body: this._list.length>0?ListView(children: this._list.map((value){return ListTile(title: Text(value["title"]),);}).toList(),):Text("加载中..."));}}

请求数据

//请求数据_getData() async{var apiUrl="http://192.168.0.5:3000/news";var result=await http.get(apiUrl);if(result.statusCode==200){// print(json.decode(result.body));setState(() {this._news=json.decode(result.body)["msg"]; });}else{print(result.statusCode);}}

提交数据

_postData() async{var apiUrl="http://192.168.0.5:3000/dologin";var result=await http.post(apiUrl, body: {'username': '张三', 'age': '20'});if(result.statusCode==200){print(json.decode(result.body));}else{print(result.statusCode);}}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。