当前位置: 首页 > news >正文

广东梅州兴宁做网站公司杭州市建设住房保障局网站

广东梅州兴宁做网站公司,杭州市建设住房保障局网站,网站定制排名,网站建设学什么在Flutter 中常见的网络请求方式有三种:HttpClient、http库、dio库; 本文简单介绍 使用dio库使用。 选择dio库的原因: dio是一个强大的Dart Http请求库,支持Restful API、FormData、拦截器、请求取消、Cookie管理、文件上传/下载…

在Flutter 中常见的网络请求方式有三种:HttpClient、http库、dio库;

本文简单介绍 使用dio库使用。
选择dio库的原因:

dio是一个强大的Dart Http请求库,支持Restful API、FormData、拦截器、请求取消、Cookie管理、文件上传/下载、超时、自定义适配器等...

1、使用dio 三方库必然需要先在pubspec中依赖它:

dio: ^3.0.1

注:格式对齐

2、创建HttpConfig 基础配置

// 网络请求配置文件
class HTTPConfig {static const baseURL  = "http://127.0.0.0:8000";static const timeout = 5000;
}

3、创建基础网络请求

import 'package:dio/dio.dart';
import 'package:list/douban/Common/custom_log.dart';
import 'package:list/douban/Common/http_config.dart';// ignore: camel_case_types
class Http_request {// 创建网络请求实例对象static final BaseOptions baseOptions = BaseOptions(baseUrl: HTTPConfig.baseURL, connectTimeout: HTTPConfig.timeout);static final Dio dio = Dio(baseOptions);static Future<T> request<T>(String url,{String method = "get", required Map<String, dynamic> params}) async {// 1 请求的单独配置final Options options = Options(method: method);// 2 添加第一个拦截器// ignore: unused_local_variableInterceptor dInter = InterceptorsWrapper(onRequest: (RequestOptions options, RequestInterceptorHandler handler) {// 1.在进行任何网络请求的时候, 可以添加一个loading显示// 2.很多页面的访问必须要求携带Token,那么就可以在这里判断是有Token// 3.对参数进行一些处理,比如序列化处理等Logs("请求之前", StackTrace.current);handler.next(options);}, onResponse: (Response response, ResponseInterceptorHandler handler) {Logs("相应之前", StackTrace.current);handler.next(response);}, onError: (DioError error, ErrorInterceptorHandler handler) {Logs("错误之前", StackTrace.current);handler.next(error);});// 3 发送网络请求try {Response response =await dio.request<T>(url, queryParameters: params, options: options);return response.data;} on DioError catch (e) {return Future.error(e);}}
}

4、根据功能将网络请求进行封装处理


import 'package:list/douban/Common/custom_log.dart';
import 'package:list/douban/Common/http_request.dart';class HomeRequest {Future<List> getMovieTopList(int start, int count) async{// 1 拼接urlfinal url = "https://douban.uieee.com/v2/movie/top250?start=$start&count=$count";Logs("发送请求$url", StackTrace.current);// 2 发送请求final result = await Http_request.request(url, params: {"":""});// 转成模型List movies = [];final subjects = result["subjects"];Logs(subjects, StackTrace.current);// 这里遍历 subjects 进行json解析以及将数据 bean添加到数组并返回// 返回数据return movies;}
}

最基本的网络请求处理,后面会将此进行优化改进。

http://www.yayakq.cn/news/846145/

相关文章:

  • 综合商城网站建设wordpress 默认字体
  • 销售网站平台怎么做的南宁小程序建设
  • 网站建设谢词家具设计大师
  • 网站飘动wordpress迁移后媒体库丢失
  • 仙桃住房和城乡建设部网站电子产品展示网站模板
  • 北京网站设计费用专业团队的梗
  • 怎样做支付网站江西省城乡建设培训网站官方网站
  • 唐山自助建站开源博客程序WordPress下载
  • 建设部招标网 官方网站怎么做网站海外推广
  • 网站页头背景阿里巴巴的网站怎么做的
  • 自己动手制作网站wordpress做网站卡吗
  • 网站建设是怎么收费的建立的意思解释
  • 甘肃精神文明建设网站上海比较出名的互联网公司
  • 兖州建设公司网站温州外发加工网
  • 网站开发属于什么系统关于做情侣的网站的图片大全
  • 运动健身型网站开发山东临沂网站推广
  • 深圳的网站建设公司有哪些云南网站建设优化技术
  • 山东省建设执业注册中心网站网络平台有哪些
  • 宝安网站建设网站制作哪家快德宏网站制作
  • 找人代做网站费用库存管理软件免费版app
  • 福建省百川建设发展有限公司网站wordpress搭建环境搭建
  • 做网络写手最好进那个网站网站设计云匠网
  • 电脑上自己做科目一的网站app推广好做吗
  • 免费网站正能量百度一下就知道官网
  • 专业网站托管如何做企业网站方法
  • 二级目录做网站wordpress 腾讯cos
  • 网站注册商标属于哪一类网站标题一样
  • 东莞石龙网站建设php做网站答辩问题
  • 沙漠风网站建设6js网站评论框
  • 怎样做国外网站推广推广怎么做才可以赚钱