Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Flutter 如何将Alice库添加到Flatter项目?_Flutter_Flutter Dependencies - Fatal编程技术网

Flutter 如何将Alice库添加到Flatter项目?

Flutter 如何将Alice库添加到Flatter项目?,flutter,flutter-dependencies,Flutter,Flutter Dependencies,我最近开始学习Flitter,之前曾使用本地语言,即kotlin编程语言。我用了一把夹头。现在有一个alice图书馆供Flatter使用。但在这种情况下我很惊讶这么做。请注意,任何反馈对我都是有价值的 主飞镖 服务路线:黑暗 RouteService RouteService=RouteService(); 类路由服务{ 静态最终字符串baseUrl=”http://my-service:8080/api/"; 最终Dio_Dio=Dio(); final HiveDB_HiveDB=locat

我最近开始学习Flitter,之前曾使用本地语言,即kotlin编程语言。我用了一把夹头。现在有一个alice图书馆供Flatter使用。但在这种情况下我很惊讶这么做。请注意,任何反馈对我都是有价值的

主飞镖

服务路线:黑暗

RouteService RouteService=RouteService();
类路由服务{
静态最终字符串baseUrl=”http://my-service:8080/api/";
最终Dio_Dio=Dio();
final HiveDB_HiveDB=locator.get();
未来请求({
必需的字符串url,
String方法='GET',
动态数据,
地图?标题,
int超时=60000,
})异步的{
试一试{
最终地图主标题={
“令牌”:wait_hiveDB.getToken()
};
if(headers!=null)mainHeader.addAll(headers);
响应=等待请求(
“$baseUrl$url”,
选项:选项(
标题:mainHeader,
方法:方法,,
sendTimeout:超时,
receiveTimeout:超时,
validateStatus:(状态)=>状态==200,
),
数据:数据,
);
返回_getResponseModel(响应);
}关于错误捕获(e){
返回ResponseModel.fail(消息:e.response!.data);
}捕获(e){
返回ResponseModel.fail(消息:$e);
}
}
ResponseModel\u getResponseModel(响应){
if(response.statusCode==200&&response.data!=null)
返回ResponseModel.fromJson(response.data);
return ResponseModel.empty();
}
}
class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    SystemImp.setStatus();
    return MaterialApp(
      title: "App",
      debugShowCheckedModeBanner: false,
      theme: ThemeData(
        primaryColor: MyColors.orangeAccent,
        accentColor: MyColors.orangeAccent,
      ),
      home: SplashScreen.screen(),
    );
  }
}
RouteService routeService = RouteService();

class RouteService {
  static final String baseUrl = "http://my-service:8080/api/";
  final Dio _dio = Dio();
  final HiveDB _hiveDB = locator.get();

  Future<ResponseModel> request({
    required String url,
    String method = 'GET',
    dynamic data,
    Map<String, dynamic>? headers,
    int timeOut = 60000,
  }) async {
    try {
      final Map<String, dynamic> mainHeader = {
        "token": await _hiveDB.getToken()
      };
      if (headers != null) mainHeader.addAll(headers);
      Response response = await _dio.request(
        "$baseUrl$url",
        options: Options(
          headers: mainHeader,
          method: method,
          sendTimeout: timeOut,
          receiveTimeout: timeOut,
          validateStatus: (status) => status == 200,
        ),
        data: data,
      );

      return _getResponseModel(response);
    } on DioError catch (e) {
      return ResponseModel.fail(message: e.response!.data);
    } catch (e) {
      return ResponseModel.fail(message: "$e");
    }
  }

  ResponseModel _getResponseModel(Response response) {
    if (response.statusCode == 200 && response.data != null)
      return ResponseModel.fromJson(response.data);
    return ResponseModel.empty();
  }
}