文章目录
Flutter原生网络请使用
Get请求的使用
json to bean
使用工具,快速生成bean
json转bean
这就是一个简单的网络请求例子
拿到数据之后,我们是不是显示?
个人的学习方法
下一篇是什么?
Flutter原生网络请使用
例子:这是领券联盟的一个分类
https://api.sunofbeach.net/shop/discovery/9654/1
我们尝试请求这个地址,得到数据。
Get请求的使用
import 'dart:convert';import 'dart:io';
//构建请求clientvar httpClient = new HttpClient();List tempList;var url = "https://api.sunofbeach.net/shop/discovery/9654/1"var request = await httpClient.getUrl(Uri.parse(url));//得到http响应var response = await request.close();//判断状态码if (response.statusCode == HttpStatus.OK) { var json = await response.transform(utf8.decoder).join(); //解码 Map map = jsonDecode(json); //在Android,我们用GsonFrmat,把json转bean //在flutter,有同样的工具。UnionCategoryDetailEntity就是这样生成的。 //下面会讲 var entity = UnionCategoryDetailEntity().fromJson(map); //data就是一个数组。我们赋值给之前定义的变量。 tempList = entity.data; } else { //处理异常 print("Http status ${response.statusCode}") }//最后我们更新数据源,这样子,列表就会更新数据了。setState(() { category = tempList;});
json to bean
使用工具,快速生成bean
准备好我们的请求结果,就是json串
写名字,粘贴json。
json转bean
Map map = jsonDecode(json);var entity = UnionCategoryDetailEntity().fromJson(map);
这样就成功得到bean了。随便访问里面的属性。
这就是一个简单的网络请求例子
这个没有任何封装,对于新手的我来说,现在还不需要,先找找感觉,把自己想做的东西做出来先。
拿到数据之后,我们是不是显示?
Android中,我们使用list view 或者recyclerview显示数据。在flutter中,有一个list view组件。我们后面会使用它来显示返回的列表。先给大家看看效果图吧。免得有人说,没图你说个xx。
这个就是列表的显示了。如何虽然是这样,但是我们需要学习很多控件的使用。比如显示文本的Text。图片Image。其他各种位置控制等等。
个人的学习方法
直接写,然后遇到不懂的地方,就搜索引擎,然后看看别人是怎么做的,自己再模仿。举一反1.5。 直接写的好处就是,你会遇到n种问题,n²种不会的操作。非常痛苦,但是能承受下来就出结果。循序渐进的从dart开始学习,猴年马月才出效果图。但是直接写需要有java基础,或者kotlin基础,或者swift基础都行。因为变量,流程控制,等等都是互通的。
下一篇是什么?
下一篇就是上面的效果图,如果把数据显示到listview中,以及如何分析一个页面,怎么去实现。由于工作比较忙,更新得比较慢。以上
领取专属 10元无门槛券
私享最新 技术干货