create static method
Dio
create({
- required FxConfig config,
- required FxTokenManager tokenManager,
- required Future<
bool> onUnauthorized(),
Implementation
static Dio create({
required FxConfig config,
required FxTokenManager tokenManager,
required Future<bool> Function() onUnauthorized,
}) {
final dio = Dio(
BaseOptions(
baseUrl: '${config.apiBaseUrl}/${config.apiVersion}',
connectTimeout: Duration(milliseconds: config.connectTimeoutMs),
receiveTimeout: Duration(milliseconds: config.receiveTimeoutMs),
headers: {
'Content-Type': 'application/json',
'Accept': 'application/json',
},
),
);
dio.interceptors.addAll([
FxHeadersInterceptor(config),
FxLogInterceptor(),
FxAuthInterceptor(
dio: dio,
tokenManager: tokenManager,
onRefresh: onUnauthorized,
publicEndpoints: config.endpoints.publicEndpoints,
)
]);
return dio;
}