onError method
Called when an exception was occurred during the request.
Implementation
@override
void onError(DioException err, ErrorInterceptorHandler handler) async {
AppLogger.error(err);
// Unauthorized → try refresh
if (err.response?.statusCode == 401 &&
!err.requestOptions.path.contains("/auth/refresh")) {
final refreshed = await authManager.refreshToken.call();
if (refreshed) {
final retryReq = await authManager.retryRequest.call(err);
if (retryReq != null) {
return handler.resolve(retryReq);
}
}
}
handler.next(err);
}