dio helper

dio helper class used to api calling get, post, delete, put.

var apiRepository = ApiRepository(ApiProvider(DioHelper(Dio())));
String mainUrl = 'https://api.first.org/data/v1/';

GET API

apiRepository.getApi('${mainUrl}countries', success: (response) {},
    error: (error) {
   print('Error ${error.errorLanguageEntity!.defaultLanguage} ${error.statusCode}');
});

POST API

apiRepository.postApi('${mainUrl}countries', success: (response) {},
    error: (error) {
   print('Error ${error.errorLanguageEntity!.defaultLanguage} ${error.statusCode}');
});

POST API WITH QUERY PARAMETER CALLING

apiRepository.postApi('${mainUrl}countries',
    queryParameters: {}, //QUERY PARAMETER
    success: (response) {}, error: (error) {
  //GET THE ERROR FROM DioErrorEntity
    print('Error ${error.errorLanguageEntity!.defaultLanguage} ${error.statusCode}');
});

POST API WITH BODY (JSON) CALLING

apiRepository.postApi('${mainUrl}countries', data: {}, success: (response) {},
    error: (error) {
     print('Error ${error.errorLanguageEntity!.defaultLanguage} ${error.statusCode}');
});

IMAGE / FILE UPLOAD USING MULTIPART POST API

  FormData formData = FormData.fromMap({
    "name": "",
    "age": 1,
    "file": await MultipartFile.fromFile("./flutter.png", filename: "flutter.png"),
  });
  
  apiRepository.imageUpload('${mainUrl}countries',
      formData: formData,
      success: (response) {},
      error: (error) {
       print('Error ${error.errorLanguageEntity!.defaultLanguage} ${error.statusCode}');
  });

DIO HELPER CLASS GET THE ERROR

   print('Error ${error.errorLanguageEntity!.defaultLanguage} ${error.statusCode}');

DIO ERROR

const requestCancelError = 'Request cancellation';
const connectionTimeOutError = 'Connection timed out';
const requestTimeOutError = 'Request timed out';
const responseTimeOutError = 'Response timeout';
const checkInternetConnectionError = 'Check your internet connection';
const requestSyntaxError = 'Request syntax error';
const serverRefusedError = 'Server refused to execute';
const dataNotAvailableError = 'Data not available';
const requestForbiddenError = 'Request method is forbidden';
const serverInternalError = 'Server internal error';
const invalidRequestError = 'Invalid request';
const serverDownError = 'Server is down';
const notSupportHTTPError = 'Does not support HTTP protocol request';
const unknownMistakeError = 'Unknown mistake';
const unknownError = 'Unknown error';

Libraries

dio_helper