dio_response_validator 0.2.3 copy "dio_response_validator: ^0.2.3" to clipboard
dio_response_validator: ^0.2.3 copied to clipboard

An extension on Dio response futures to perform validation and data transformation

An extension on Dio response futures to perform validation and data transformation

Features #

  • Validate responses from Dio without using try/catch blocks everywhere
  • Easily transform responses from Dio into your own data models
  • Handles transformation errors

Usage #

import 'package:dio/dio.dart';
import 'package:dio_response_validator/dio_response_validator.dart';

void main() async {
  final dio = Dio();

  final successResponse =
      await dio.get('https://vrchat.com/api/1/config').validate(
            transform: (data) => data['apiKey'],
          );

  // Prints the api key
  printResponse(successResponse);

  final failureResponse =
      await dio.get('https://vrchat.com/api/2/config').validate();

  // Prints a 404 error
  printResponse(failureResponse);
}

void printResponse(ValidatedResponse response) {
  if (response.success != null) {
    print(response.success!.data);
  } else {
    print(response.failure!);
  }
}

Additional information #

Pull requests welcome

0
likes
140
pub points
56%
popularity

Publisher

verified publisherrexios.dev

An extension on Dio response futures to perform validation and data transformation

Repository (GitHub)
View/report issues

Documentation

API reference

License

BSD-3-Clause (LICENSE)

Dependencies

dio

More

Packages that depend on dio_response_validator