get static method
Implementation
static Future<HttpResponse> get(String url,
{Map<String, String>? headers,
int? timeout = 60,
bool refresh = false}) async {
try {
// convert url
Uri? uri = encodeUri(url, refresh: refresh);
if (uri != null) {
// execute request
Response response = await dart_http
.get(uri, headers: encodeHeaders(headers))
.timeout(Duration(
seconds: (((timeout != null) && (timeout > 0))
? timeout
: defaultTimeout)));
// decode headers
decodeHeaders(response);
// return response
return HttpResponse.factory(url, response);
} else {
return HttpResponse(url,
statusCode: HttpStatus.internalServerError,
statusMessage: "Url $url is invalid");
}
} catch (e) {
var msg = e.toString();
// endpoint not found or unreachable
if ((msg.toLowerCase().startsWith('xmlhttp'))) {
return HttpResponse(url,
statusCode: HttpStatus.notFound, statusMessage: "Not Found: $msg");
}
return HttpResponse(url,
statusCode: HttpStatus.internalServerError, statusMessage: msg);
}
}