HttpRequest constructor
HttpRequest({
- TargetApi? api,
Implementation
HttpRequest({TargetApi? api}) {
api ??= DefaultTargetApi(HttpDefaultConfig().defaultBaseUrl);
_dio.options.baseUrl = api.baseUrl;
_dio.options.contentType = api.contentType;
_dio.options.connectTimeout = api.connectTimeout;
_dio.options.sendTimeout = api.sendTimeout;
_dio.options.receiveTimeout = api.receiveTimeout;
_dio.options.headers = api.headers;
// debug模式下打印请求
if (kDebugMode) {
_dio.interceptors.add(LogInterceptor(
responseBody: true,
error: true,
requestHeader: false,
responseHeader: false,
request: true,
requestBody: true));
}
if (api.interceptors?.isNotEmpty ?? false) {
_dio.interceptors.addAll(api.interceptors!);
}
if (api.proxy != null) {
_dio.httpClientAdapter = DefaultHttpClientAdapter()
..onHttpClientCreate = (client) {
// "PROXY host:port"
// "DIRECT"
client.findProxy = (url) {
return 'PROXY ${api?.proxy}';
};
};
}
}