Flutter实战视频-移动电商-05.Dio基础_引入和简单的Get请求
05.Dio基础_引入和简单的Get请求
博客地址:
https://jspang.com/detailed?id=53#toc220
第三方的http请求库叫做Dio
https://github.com/flutterchina/dio
pubspec.yaml
这两者的区别:
dependencies是生产环境中
dev_dependencies:开发环境,上线的是时候不会被打包进去。

添加我们的Dio

这样就表示下载好了

安装包遇到的问题
提示下面的错误:一直在下载包 但是就是一直下载不下来的情况,结束进程的dart.exe然后,找到flutter的SDK的目录D:\Flutter\flutter\bin\cache删除lockfile这个文件。重新继续进行安装,
flutter packages get:running
如果还是报错的话,那么在cmd里面运行flutter doctor -v查看电脑当前的运行环境是否有叹号的,如果有,那么就解决掉对应的错误。
再次打开VSCode获取package。
重要的提醒:能科学的上网的 ,尽量科学的上网的去安装包。
在我们的首页去发送一个请求。
home_page.dart进行get请求
首先第一步就是要引入我们的dio库。我们写一个方法来请求我们的远程服务器
https://www.easy-mock.com/mock/5c60131a4bed3a6342711498/baixing/dabaojian?name=大胸美女
请求的地址后面传一个name值。
这我们使用的是个异步的方法async 那么在请求的时候就需要用到await
Response是请求返回的结果。

测试请求数据的结果:

{"success":true,"data":{"default":"jspang","_req":{"method":"GET","url":"/mock/5c60131a4bed3a6342711498/baixing/dabaojian?name=%E5%A4%A7%E8%83%B8%E7%BE%8E%E5%A5%B3","header":{"host":"www.easy-mock.com","x-forwarded-for":"113.128.100.214","x-forwarded-proto":"https","connection":"close","content-length":"0","user-agent":"Dart/2.1 (dart:io)","accept-encoding":"gzip"}},"name":"大胸美女走进
了房间,来为你亲情服务"}}
因为我们传的name值是大胸美女
我们可以传一个大长腿返回的结果如下:
{"success":true,"data":{"default":"jspang","_req":{"method":"GET","url":"/mock/5c60131a4bed3a6342711498/baixing/dabaojian?name=%E5%A4%A7%E9%95%BF%E8%85%BF%E7%BE%8E%E5%A5%B3","header":{"host":"www.easy-mock.com","x-forwarded-for":"113.128.100.214","x-forwarded-proto":"https","connection":"close","content-length":"0","user-agent":"Dart/2.1 (dart:io)","accept-encoding":"gzip"}},"name":"大长腿美女走进了房间,来为你亲情服务"}}
代码:
import 'package:flutter/material.dart';
import 'package:dio/dio.dart'; class HomePage extends StatelessWidget {
@override
Widget build(BuildContext context) {
getHttp();
return Scaffold(
body: Center(child: Text('商城首页'),),
);
} void getHttp() async{
try {
Response response;
response=await Dio().get('https://www.easy-mock.com/mock/5c60131a4bed3a6342711498/baixing/dabaojian?name=大长腿美女');
return print(response);
} catch (e) {
return print(e);
}
}
}
home_page.dart
Flutter实战视频-移动电商-05.Dio基础_引入和简单的Get请求的更多相关文章
- Flutter实战视频-移动电商-08.Dio基础_伪造请求头获取数据
08.Dio基础_伪造请求头获取数据 上节课代码清楚 重新编写HomePage这个动态组件 开始写请求的方法 请求数据 .但是由于我们没加请求的头 所以没有返回数据 451就是表示请求错错误 创建请求 ...
- Flutter实战视频-移动电商-07.Dio基础_POST请求的使用
07.Dio基础_POST请求的使用 越界问题解决 容器越界的问题,越界是因为键盘弹起的问题.如果键盘不弹起是不会越界 我们加一个滚动组件就可以解决. 这是技术胖视频中出现的越界的截图效果 这是我自己 ...
- Flutter实战视频-移动电商-06.Dio基础_Get请求和动态组件协作
博客地址: https://jspang.com/post/FlutterShop.html#toc-0ee 编写页面代码 创建动态组件HomePage,原来的代码是静态的我们这里就去掉就可以了. 然 ...
- Flutter移动电商实战 --(5)dio基础_引入和简单的Get请求
这篇开始我们学习Dart第三方Http请求库dio,这是国人开源的一个项目,也是国内用的最广泛的Dart Http请求库. 1.dio介绍和引入 dio是一个强大的Dart Http请求库,支持Res ...
- 05-Flutter移动电商实战-dio基础_引入和简单的Get请求
这篇开始我们学习Dart第三方Http请求库dio,这是国人开源的一个项目,也是国内用的最广泛的Dart Http请求库. 1.dio介绍和引入 dio是一个强大的Dart Http请求库,支持Res ...
- Flutter实战视频-移动电商-34.列表页_小BUG的修复
34.列表页_小BUG的修复 当高粱酒的子类没有数据返回的时候就会报错. 解决接口空数据报错的问题 没有数据的时候,给用户一个友好的提示, 我们没有数据的时候还要告诉用户,提示一下他没有数据,在我们的 ...
- Flutter实战视频-移动电商-21.分类页_类别信息接口调试
21.分类页_类别信息接口调试 先解决一个坑 取消上面的GridVIew的回弹效果.就是在拖这个gridview的时候有一个滚动的效果 physics: NeverScrollableScrollPh ...
- Flutter实战视频-移动电商-25.列表页_使用Provide控制子类-1
25.列表页_使用Provide控制子类-1 主要是二级分类的UI布局 1分15秒 生成我们的右侧动态类 定义list变量 开始写里面的子项,把每一个小的写了 再拼成一个大的 这样我们的小类就写完了 ...
- Flutter实战视频-移动电商-26.列表页_使用Provide控制子类-2
26.列表页_使用Provide控制子类-2 主要实现功能,点击一级分类,二级分类跟着变.这里主要用哦我们的provide 新建provide provide文件夹下创建:child_category ...
随机推荐
- 阿里云OSS对象存储 简单上传文件
不得不说阿里云的命名比较让人摸不着头脑,开始以为是文件存储NAS,弄了半天什么文件系统,挂载点的搞不明白.后来才搞清楚原来 对象存储OSS才是我需要的. 其中EndPoint就是画红框的部分,但是要加 ...
- HDU 4923 Room and Moor(推理+栈维护)
HDU 4924 Room and Moor 题目链接 题意:给定一个01组成的a序列.要求一个b序列,b序列每一个数值为[0, 1]之间的数,而且b序列为非递减序列,要求∑(ai−bi)2最小,求这 ...
- Android API Guides---NFC Basics
本文档介绍了Android中运行基本任务NFC. 它说明了怎样在NDEF消息的形式发送和接收数据的NFC并介绍了支持这些功能的Android框架的API. 对于更高级的主题.包含与非NDEF数据工 ...
- EasyNVR将如何能够把内网各种各样的监控摄像机对接到公网云平台
需求 传统监控行业里面,监控客户端.服务器端,设备端都在一个内网里面,搞个电脑开个监控终端,顶多再配一个NVR做一做摄像机的录像存储.上个电视墙(个人感觉这功能除了面子工程,没啥实用的,还特费电!), ...
- java CyclicBarrier和wait/notifyAll
1 CyclicBarrier 多个进程做自己的事情,然后先做完的就等待在CyclicBarrier上,然后最后一个做完的线程到来时会冲破CyclicBarrier,然后执行CyclicBarrier ...
- Android笔记之自定义对话框
效果如下图 对话框布局 dialog_uninstallation_confirmation.xml <?xml version="1.0" encoding="u ...
- 活动推荐 | 听说 PHP 是最好的语言 - 和 OneAPM 一起參与上海 PHPCon 技术盛宴吧
2015年7月11日,第三届 PHP 大会就要和各位 PHPer 正式见面了.本年度,由 Think 技术社区主办,OneAPM 赞助的 PHPCon2015 是为全部热爱技术的 PHPer 提供的最 ...
- Composite Pattern
1.将对象组合成树形结构以表示“部分--整体”的层次结构.组合模式使得用户对单个对象和组合对象的使用具有一致性. 2.Composite 模式结构图 3.实现 #ifndef _COMPONENT_H ...
- AndroidPageObjectTest_Chained.java
以下代码使用ApiDemos-debug.apk进行测试 //这个脚本用于演示PageFactory的功能:链式注解@AndroidFindBys.@IOSFindBys.具体用法参考页面类的代码. ...
- office web apps的搭建部署(1)(写于2017.12.27)
因为业务方面的需求,项目要求搭建office-web-apps这个玩意儿,做一个在线预览编辑的功能,为了方便,我下面都用OWA代替这个服务. 首先说一下什么是office-web-apps-serve ...