network_module.dart 805 B

123456789101112131415161718192021222324252627282930313233343536
  1. import 'package:dio/dio.dart';
  2. import 'package:injectable/injectable.dart';
  3. import 'package:keyboard/data/api/atmob_api.dart';
  4. import 'package:pretty_dio_logger/pretty_dio_logger.dart';
  5. import '../data/consts/constants.dart';
  6. import '../utils/stream_dio_log_interceptor.dart';
  7. import '../data/consts/build_config.dart';
  8. @module
  9. abstract class NetworkModule {
  10. @singleton
  11. Dio createDefaultDio() {
  12. Dio dio = Dio(BaseOptions());
  13. dio.interceptors.add(PrettyDioLogger(
  14. requestHeader: true,
  15. requestBody: true,
  16. responseBody: true,
  17. responseHeader: false,
  18. error: true,
  19. compact: true,
  20. enabled: BuildConfig.isDebug,
  21. ));
  22. return dio;
  23. }
  24. @singleton
  25. AtmobApi provideAtmobApi(Dio dio) {
  26. return AtmobApi(dio, baseUrl: Constants.baseUrl);
  27. }
  28. }