diff --git a/assets/release_notes.md b/assets/release_notes.md index 729795a2..64a7129b 100644 --- a/assets/release_notes.md +++ b/assets/release_notes.md @@ -4,6 +4,7 @@ ### 0.1.6 - May 2021 --- +- Display error message for improperly formatted server address ### 0.1.5 - May 2021 diff --git a/lib/api.dart b/lib/api.dart index 686447a4..6c097f6c 100644 --- a/lib/api.dart +++ b/lib/api.dart @@ -421,14 +421,22 @@ class InvenTreeAPI { print("PATCH: " + _url); + final uri = Uri.parse(_url); + + // Check for invalid host + if (uri.host.isEmpty) { + showServerError(L10().invalidHost, L10().invalidHostDetails); + return null; + } + var client = createClient(true); // Open a connection to the server - HttpClientRequest request = await client.patchUrl(Uri.parse(_url)) + HttpClientRequest request = await client.patchUrl(uri) .timeout(Duration(seconds: 10)) .catchError((error) { print("PATCH request return error"); - print("URL: ${_url}"); + print("URL: ${uri}"); print("Error: ${error.toString()}"); var ctx = OneContext().context; @@ -541,12 +549,19 @@ class InvenTreeAPI { var client = createClient(true); + final uri = Uri.parse(_url); + + if (uri.host.isEmpty) { + showServerError(L10().invalidHost, L10().invalidHostDetails); + return null; + } + // Open a connection to the server - HttpClientRequest request = await client.postUrl(Uri.parse(_url)) + HttpClientRequest request = await client.postUrl(uri) .timeout(Duration(seconds: 10)) .catchError((error) { print("POST request returned error"); - print("URL: ${_url}"); + print("URL: ${uri}"); print("Error: ${error.toString()}"); var ctx = OneContext().context; @@ -679,12 +694,20 @@ class InvenTreeAPI { var client = createClient(true); + final uri = Uri.parse(_url); + + // Check for invalid host + if (uri.host.isEmpty) { + showServerError(L10().invalidHost, L10().invalidHostDetails); + return null; + } + // Open a connection - HttpClientRequest request = await client.getUrl(Uri.parse(_url)) + HttpClientRequest request = await client.getUrl(uri) .timeout(Duration(seconds: 10)) .catchError((error) { print("GET request returned error"); - print("URL: ${_url}"); + print("URL: ${uri}"); print("Error: ${error.toString()}"); var ctx = OneContext().context;