廊坊网站公司,制作一个网页的教程,天津建设工程投标信息,网站显示建设中1、获取接口的方法
在service/service_method.dart里制作方法。我们先不接收参数#xff0c;先把接口调通。
Future getHomePageBeloConten() async{try{print(开始获取下拉列表数据.................);Response response;Dio dio new Dio();dio.options.contentTypeConten…1、获取接口的方法
在service/service_method.dart里制作方法。我们先不接收参数先把接口调通。
Future getHomePageBeloConten() async{try{print(开始获取下拉列表数据.................);Response response;Dio dio new Dio();dio.options.contentTypeContentType.parse(application/x-www-form-urlencoded);int page1;response await dio.post(servicePath[homePageBelowConten],data:page);if(response.statusCode200){return response.data;}else{throw Exception(后端接口出现异常请检测代码和服务器情况.........);}}catch(e){return print(ERROR:${e});}}简单说一下 Future在我们平时开发中我们是这样用的首先给我们的函数后面加上 async 关键字表示异步操作然后函数返回值写成 Future然后我们可以 new 一个 Future逻辑前面加上一个 await关键字然后可以使用future.then 等操作。 2、进行调试接口
接口对接的方法写好了然后我们进行测试一下接口是否可以读出数据如果能读出数据就说明接口已经调通我们就可以搞事情了。
因为这个新的类是由下拉刷新的也就是动态的类所以需要使用StatefulWidget。
代码如下
class HotGoods extends StatefulWidget {_HotGoodsState createState() _HotGoodsState();
}class _HotGoodsState extends StateHotGoods {void initState() { super.initState();getHomePageBeloConten().then((val){print(val);});}overrideWidget build(BuildContext context) {return Container(child:Text(1111),);}
}3、精简代码来个通用接口
在写service_method.dart的时候你会发现我们大部分的代码都是相同的甚至复制一个方法后通过简单的修改几个地方就可以使用了。那就说明这个地方由优化的必要。让代码更通用更精简。
精简代码如下
Future request(url,formData)async{try{print(开始获取数据...............);Response response;Dio dio new Dio();dio.options.contentTypeContentType.parse(application/x-www-form-urlencoded);if(formDatanull){response await dio.post(servicePath[url]);}else{response await dio.post(servicePath[url],data:formData);}if(response.statusCode200){return response.data;}else{throw Exception(后端接口出现异常请检测代码和服务器情况.........);}}catch(e){return print(ERROR:${e});}}使用也是非常简单的只要传递一个接口名称和相对参数就可以了。
request(homePageBelowConten,1).then((val){print(val);
});