博客地址:html
https://jspang.com/post/FlutterShop.html#toc-4c7git
第三方的http请求库叫作Diogithub
https://github.com/flutterchina/dio服务器
这二者的区别:less
dependencies是生产环境中异步
dev_dependencies:开发环境,上线的是时候不会被打包进去。jsp
添加咱们的Dioasync
这样就表示下载好了ide
在咱们的首页去发送一个请求。post
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); } } }