You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
- import 'dart:developer';
-
- import 'package:dio/dio.dart';
- import 'package:farm_tpf/utils/pref.dart';
-
- class DioProvider {
- static Dio instance() {
- final dio = Dio();
-
- // dio.interceptors.add(AuthInterceptor());
- dio.interceptors.add(HttpLogInterceptor());
-
- return dio;
- }
- }
-
- class HttpLogInterceptor extends InterceptorsWrapper {
- var pref = LocalPref();
- @override
- Future onRequest(RequestOptions options) async {
- var token = await pref.getString(PrefKey.token_key);
- options.headers["Authorization"] = "Bearer $token";
- options.receiveTimeout = 20000;
- // log("onRequest: ${options.uri}\n"
- // "data=${options.data}\n"
- // "method=${options.method}\n"
- // "headers=${options.headers}\n"
- // "queryParameters=${options.queryParameters}");
- return options;
- }
-
- @override
- Future onResponse(Response response) {
- // log("onResponse: $response");
- return super.onResponse(response);
- }
-
- @override
- Future onError(DioError err) {
- // log("onError: $err\n"
- // "Response: ${err.response}");
- return super.onError(err);
- }
- }
|