Untitled
unknown
dart
2 years ago
2.8 kB
8
Indexable
import 'package:dio/dio.dart';
import 'package:flutter/foundation.dart';
import '../data/repositories/local/sharedpreferences/sharepreferences_class.dart';
import '../utils/conts/api.dart';
class ApiService {
static Dio? _dio;
static Dio? getDio() {
if (_dio == null) {
///amar eikhane ei data gula sharedprefernce theke nite hobe....but sekhetre "static Future<Dio?> getDio() async{}" eit korte hobe..r eita kora jacce na
var token = await SharedPreferencesClass.getValue(SharedPreferencesClass.tokenKey);
var cookieName = await SharedPreferencesClass.getValue(SharedPreferencesClass.cookieKey);
var tenant = await SharedPreferencesClass.getValue(SharedPreferencesClass.tenantKey);
BaseOptions options = BaseOptions(
baseUrl: Api.baseUrl,
headers: {
'Tenant': 'acme.saifulshuvo.xyz',
'Content-Type': 'application/json',
'Authorization': "${Api.bearerToken}",
'X-Requested-With': 'XMLHttpRequest',
'Accept-Language': 'en',
});
_dio = Dio(options);
_dio!.interceptors
.add(InterceptorsWrapper(onRequest: (options, handler) async {
if (kDebugMode) {
print('Base Url : ${options.baseUrl}');
print('End Point : ${options.path}');
print('Method : ${options.method}');
print('Data : ${options.data}');
}
// var token = await SharedPreferencesClass.getValue(SharedPreferencesClass.tokenKey);
// var cookieName = await SharedPreferencesClass.getValue(SharedPreferencesClass.cookieKey);
// var tenant = await SharedPreferencesClass.getValue(SharedPreferencesClass.tenantKey);
if (token != null) {
if (kDebugMode) {
print(("token :: $token"));
}
options.headers = {
'Tenant': 'acme.saifulshuvo.xyz',
'Content-Type': 'application/json',
'Authorization': "${Api.bearerToken}",
'X-Requested-With': 'XMLHttpRequest',
'Accept-Language': 'en',
'cookie': cookieName,
};
}
return handler.next(options);
}, onResponse: (response, handler) {
if (kDebugMode) {
print('response data : ${response.data}');
}
return handler.next(response);
}, onError: (DioException e, handler) {
if (kDebugMode) {
print('Error Response : ${e.response}');
print('Error message : ${e.message}');
print('Error type : ${e.type.name}');
}
return handler.next(e);
}));
}
return _dio;
}
}
Editor is loading...
Leave a Comment