第一步:接口路由配置
/// 接口配置类
class NetApi {
/// 登录接口
static const login = '/user/v1/login';
/// 用户列表接口
static const userList = '/user/v1/list';
}
第二步:响应数据模型解析配置
/// 响应数据模型解析配置
class NetDecoder {
/// 解析配置
static Map<dynamic, dynamic> decoderMap = {
/// 配置对象解析
LoginModel: (dynamic mapOrList) => NetFactory.decode(mapOrList, (element) => LoginModel.fromJson(element)),
/// 配置列表数据解析
List<LoginModel>: (dynamic mapOrList) => NetFactory.decode<LoginModel>(mapOrList, (element) => LoginModel.fromJson(element)),
};
}
第三步:调用封装的API请求接口
RespMsg<LoginModel> respMsg = await NetUtil.post<LoginModel>(NetApi.login, {"account": "admin", "password": "123456"});
if (respMsg.isSuccess) {
debugPrint("POST请求返回成功 userId = ${respMsg.data?.userId}");
}
RespMsg<List<LoginModel>> respList = await NetUtil.get<List<LoginModel>>(NetApi.userList);
if (respList.isSuccess) {
debugPrint("GET请求返回成功 用户数量 = ${respList.data?.length}");
}
以上为核心代码片段,完整源码可以点击👉《玩转Flutter》下载全部源码。
《玩转Flutter》APP已同步上线鸿蒙/iOS/安卓三端,独家提供:
✅开发框架 ✅调试工具
✅基础组件 ✅UI组件 ✅页面模版
所见即所得演示,助你开发效率飙升300%!