dahttp 1.2.0 dahttp: ^1.2.0 copied to clipboard
HTTP wrapper for Dart with integrated logger design to be used for REST APIs.
Dahttp #
HTTP wrapper for Dart with integrated logger design to be used for REST APIs.
Example #
main() async {
var getDogCeo = GetDogCeo();
var result = await getDogCeo.call();
if (result.isSuccessful) {
print('Result: ${result.value.url}');
} else if (result.isUnsuccessful) {
print('Error: ${result.response.statusCode}');
} else if (result.hasFailed) {
print('Exception: ${result.exception}');
}
}
class GetDogCeo extends ValueHttp<DogCeo> {
Future<HttpResult<DogCeo>> call() {
return super.get('https://dog.ceo/api/breeds/image/random');
}
@override
DogCeo convert(Response response) {
return DogCeo.fromJson(response.body);
}
}
@immutable
class DogCeo {
final String url;
DogCeo(this.url);
static DogCeo fromJson(String json) {
var data = jsonDecode(json);
return DogCeo(data['message']);
}
}