dio library
A powerful Http client for Dart, which supports Interceptors, Global configuration, FormData, File downloading etc. and Dio is very easy to use.
A open source project authorized by https://flutterchina.club.
Classes
- BaseOptions
-
The common config for the Dio instance.
dio.options
is a instance of BaseOptions - CancelToken
- You can cancel a request by using a cancel token. One token can be shared with different requests. when a token's cancel method invoked, all requests with this token will be cancelled.
- DefaultTransformer
- Dio
- A powerful Http client for Dart, which supports Interceptors, Global configuration, FormData, File downloading etc. and Dio is very easy to use.
- DioMixin
- ErrorInterceptorHandler
- Handler for error interceptor.
- FormData
- A class to create readable "multipart/form-data" streams. It can be used to submit forms and file uploads to http server.
- Headers
- HttpClientAdapter
- HttpAdapter is a bridge between Dio and HttpClient.
- Interceptor
-
Dio instance may have interceptor(s) by which you can intercept
requests/responses/errors before they are handled by
then
orcatchError
. See also: - Interceptors
- Interceptors are a queue, and you can add any number of interceptors, All interceptors will be executed in first in first out order.
- InterceptorsWrapper
- InterceptorsWrapper is a helper class, which is used to conveniently create interceptor(s). See also:
-
ListParam<
T> - Lock
- Add lock/unlock API for interceptors.
- LogInterceptor
- LogInterceptor is used to print logs during network requests. It's better to add LogInterceptor to the tail of the interceptor queue, otherwise the changes made in the interceptor behind A will not be printed out. This is because the execution of interceptors is in the order of addition.
- MultipartFile
-
A file to be uploaded as part of a
MultipartRequest
. This doesn't need to correspond to a physical file. - Options
- Every request can pass an Options object which will be merged with Dio.options
- QueuedInterceptor
- Serialize the request/response/error before they enter the interceptor.
- QueuedInterceptorsWrapper
- QueuedInterceptorsWrapper is a helper class, which is used to conveniently create QueuedInterceptor(s). See also:
- RedirectRecord
- RequestInterceptorHandler
- Handler for request interceptor.
- RequestOptions
-
Response<
T> - Response describes the http Response info.
- ResponseBody
- ResponseInterceptorHandler
- Handler for response interceptor.
- Transformer
- Transformer allows changes to the request/response data before it is sent/received to/from the server.
Enums
- DioErrorType
- ListFormat
- ListFormat specifies the array format (a single parameter with multiple parameter or multiple parameters with the same name) and the separator for array items.
- ResponseType
- ResponseType indicates which transformation should be automatically applied to the response data by Dio.
Mixins
Typedefs
-
HeaderForEachCallback
= void Function(String name, List<
String> values) - InterceptorErrorCallback = void Function(DioError e, ErrorInterceptorHandler handler)
- InterceptorSendCallback = void Function(RequestOptions options, RequestInterceptorHandler handler)
- InterceptorSuccessCallback = void Function(Response e, ResponseInterceptorHandler handler)
- JsonDecodeCallback = dynamic Function(String)
- The default Transformer for Dio. If you want to custom the transformation of request/response data, you can provide a Transformer by your self, and replace the DefaultTransformer by setting the dio.Transformer.
- ProgressCallback = void Function(int count, int total)
- Callback to listen the progress for sending/receiving data.
-
RequestEncoder
= List<
int> Function(String request, RequestOptions options) -
ResponseDecoder
= String Function(List<
int> responseBytes, RequestOptions options, ResponseBody responseBody) - ValidateStatus = bool Function(int? status)
Exceptions / Errors
- DioError
- DioError describes the error info when request failed.