@@ -45,16 +45,50 @@ class ApiInterceptor extends Interceptor {
4545 ) async {
4646 debugPrint (
4747 "[${err .response ?.statusCode }] ${err .requestOptions .queryParameters ['method' ]}" );
48- debugPrint ('${err .error }\n ${err .stackTrace }' );
49- if (err.error is HandshakeException ) {
50- HandshakeException handshakeError = err.error as HandshakeException ;
51- String ? message = handshakeError.osError? .message;
52- if (message != null && message.contains ('CERTIFICATE_VERIFY_FAILED' )) {
53- // Invalid SSL
54- }
55- }
48+ debugPrint ('${err .error }\n ${err .response ?.data }\n ${err .stackTrace }' );
49+
5650 switch (err.response? .statusCode) {
51+ case 403 :
52+ App .scaffoldMessengerKey.currentState? .showSnackBar (
53+ errorSnackBar (
54+ message: appStrings.sessionStatusError_title,
55+ icon: Icons .block,
56+ ),
57+ );
58+ break ;
5759 case null :
60+ // Handle invalid SSL
61+ if (err.error is HandshakeException ) {
62+ HandshakeException handshakeError = err.error as HandshakeException ;
63+ String ? message = handshakeError.osError? .message;
64+ if (message != null &&
65+ message.contains ('CERTIFICATE_VERIFY_FAILED' )) {
66+ App .scaffoldMessengerKey.currentState? .showSnackBar (
67+ errorSnackBar (
68+ message: appStrings.loginCertFailed_title,
69+ icon: Icons .bookmark_outlined,
70+ ),
71+ );
72+ break ;
73+ }
74+ }
75+
76+ // Handle invalid URL
77+ if (err.error is SocketException ) {
78+ SocketException socketError = err.error as SocketException ;
79+ int ? code = socketError.osError? .errorCode;
80+ if (code == 7 ) {
81+ App .scaffoldMessengerKey.currentState? .showSnackBar (
82+ errorSnackBar (
83+ message: appStrings.serverURLerror_title,
84+ icon: Icons .public_off,
85+ ),
86+ );
87+ break ;
88+ }
89+ }
90+
91+ // Unknown server error
5892 App .scaffoldMessengerKey.currentState? .showSnackBar (
5993 errorSnackBar (
6094 message: appStrings.internetErrorGeneral_title,
0 commit comments