2
0
mirror of https://github.com/inventree/inventree-app.git synced 2025-04-28 05:26:47 +00:00

Handle error code 50x

This commit is contained in:
Oliver 2021-07-19 10:41:34 +10:00
parent b254784bb3
commit 31ed4c6a7b
3 changed files with 43 additions and 19 deletions

View File

@ -653,26 +653,32 @@ class InvenTreeAPI {
HttpClientResponse? _response = await request.close().timeout(Duration(seconds: 10)); HttpClientResponse? _response = await request.close().timeout(Duration(seconds: 10));
response.statusCode = _response.statusCode; response.statusCode = _response.statusCode;
response.data = await responseToJson(_response) ?? {};
// Expected status code not returned // If the server returns a server error code, alert the user
if ((statusCode != null) && (statusCode != _response.statusCode)) {
showStatusCodeError(_response.statusCode);
}
// Report any server errors
if (_response.statusCode >= 500) { if (_response.statusCode >= 500) {
sentryReportMessage( showStatusCodeError(_response.statusCode);
"Server error", } else {
context: { response.data = await responseToJson(_response) ?? {};
"url": request.uri.toString(),
"method": request.method, // Expected status code not returned
"statusCode": _response.statusCode.toString(), if ((statusCode != null) && (statusCode != _response.statusCode)) {
"requestHeaders": request.headers.toString(), showStatusCodeError(_response.statusCode);
"responseHeaders": _response.headers.toString(), }
"responseData": response.data.toString(),
} // Report any server errors
); if (_response.statusCode >= 500) {
sentryReportMessage(
"Server error",
context: {
"url": request.uri.toString(),
"method": request.method,
"statusCode": _response.statusCode.toString(),
"requestHeaders": request.headers.toString(),
"responseHeaders": _response.headers.toString(),
"responseData": response.data.toString(),
}
);
}
} }
} on SocketException catch (error) { } on SocketException catch (error) {

@ -1 +1 @@
Subproject commit 9cc07cdb0ec0012abcec827fc776d7c5473bb75e Subproject commit 84f6ed3faf63cbf371016e134196400e5f822759

View File

@ -152,6 +152,24 @@ Future<void> showStatusCodeError(int status, {int expected = 200}) async {
case 429: case 429:
msg = L10().response429; msg = L10().response429;
break; break;
case 500:
msg = L10().response500;
break;
case 501:
msg = L10().response501;
break;
case 502:
msg = L10().response502;
break;
case 503:
msg = L10().response503;
break;
case 504:
msg = L10().response504;
break;
case 505:
msg = L10().response505;
break;
default: default:
break; break;
} }