compose method
RequestOptions
compose(
- BaseOptions baseOpt,
- String path,
- dynamic data, {
- Map<
String, dynamic> ? queryParameters, - CancelToken? cancelToken,
- Options? options,
- ProgressCallback? onSendProgress,
- ProgressCallback? onReceiveProgress,
Implementation
RequestOptions compose(
BaseOptions baseOpt,
String path,
data, {
Map<String, dynamic>? queryParameters,
CancelToken? cancelToken,
Options? options,
ProgressCallback? onSendProgress,
ProgressCallback? onReceiveProgress,
}) {
var query = <String, dynamic>{};
if (queryParameters != null) query.addAll(queryParameters);
query.addAll(baseOpt.queryParameters);
var _headers = Map<String,dynamic>.from(baseOpt.headers);
if(headers!=null){
_headers.addAll(headers!);
}
var _extra = Map<String,dynamic>.from(baseOpt.extra);
if(extra!=null){
_extra.addAll(extra!);
}
var requestOptions = RequestOptions(
method: (method ?? baseOpt.method).toUpperCase(),
headers: _headers,
extra: _extra,
baseUrl: baseOpt.baseUrl,
path: path,
data: data,
connectTimeout: baseOpt.connectTimeout,
sendTimeout: sendTimeout ?? baseOpt.sendTimeout,
receiveTimeout: receiveTimeout ?? baseOpt.receiveTimeout,
responseType: responseType ?? baseOpt.responseType,
contentType:
contentType ?? baseOpt.contentType ?? Headers.jsonContentType,
validateStatus: validateStatus ?? baseOpt.validateStatus,
receiveDataWhenStatusError:
receiveDataWhenStatusError ?? baseOpt.receiveDataWhenStatusError,
followRedirects: followRedirects ?? baseOpt.followRedirects,
maxRedirects: maxRedirects ?? baseOpt.maxRedirects,
queryParameters: query,
requestEncoder: requestEncoder ?? baseOpt.requestEncoder,
responseDecoder: responseDecoder ?? baseOpt.responseDecoder,
);
requestOptions.onReceiveProgress = onReceiveProgress;
requestOptions.onSendProgress = onSendProgress;
requestOptions.cancelToken = cancelToken;
return requestOptions;
}