文档管理中心
API参考Network KitAndroidcom.huawei.hms.network.httpclientClass SummaryHttpClient.Builder

HttpClient.Builder

展开

Class Info

public static final class HttpClient.Builder extends IHttpClientBuilder

HttpClient构造器。

Public Constructor Summary

展开

Constructor Name

public HttpClient.Builder()

默认的构造方法。

Public Method Summary

展开

Qualifier and Type

Method Name and Description

public @CheckReturnValue HttpClient.Builder

addInterceptor(Interceptor interceptor)

添加应用拦截器。

public @CheckReturnValue HttpClient.Builder

addNetworkInterceptor(Interceptor interceptor)

添加网络拦截器。

public HttpClient

build()

构造HttpClient实例。

public @CheckReturnValue HttpClient.Builder

cache(String directory, long maxSize)

设置响应缓存的配置参数。

public @CheckReturnValue HttpClient.Builder

callTimeout(int callTimeout)

配置请求超时时间。

public @CheckReturnValue HttpClient.Builder

connectTimeout(int connectTimeout)

配置连接超时时间。

public @CheckReturnValue HttpClient.Builder

enableQuic(boolean quicEnabled)

配置是否开启QUIC协议,默认不开启。

public @CheckReturnValue HttpClient.Builder

hostnameVerifier(HostnameVerifier hostnameVerifier)

配置hostname校验算法。

public @CheckReturnValue HttpClient.Builder

options(String options)

配置HttpClient实例的额外配置参数。

public @CheckReturnValue HttpClient.Builder

pingInterval(int pingInterval)

配置ping帧探测时间间隔。

public @CheckReturnValue HttpClient.Builder

proxy(Proxy proxy)

配置代理,支持DIRECT(直连,不使用代理)、HTTP(HTTP、FTP等代理)和SOCKS(V4、V5)代理模式。

public @CheckReturnValue HttpClient.Builder

readTimeout(int readTimeout)

配置读超时时间。

public @CheckReturnValue HttpClient.Builder

retryTimeOnConnectionFailure(int retryTimeOnConnectionFailure)

配置请求重试次数。

public @CheckReturnValue HttpClient.Builder

sslSocketFactory(SSLSocketFactory sslSocketFactory, X509TrustManager trustManager)

配置HTTPS证书校验相关参数。

public @CheckReturnValue HttpClient.Builder

writeTimeout(int writeTimeout)

配置写超时时间。

展开

Methods Inherited from IHttpClientBuilder

addInterceptor, addNetworkInterceptor, connectTimeout, readTimeout, retryTimeOnConnectionFailure, callTimeout, pingInterval, writeTimeout, sslSocketFactory, hostnameVerifier, enableQuic, options, proxy, cache

Public Constructors

HttpClient.Builder

展开

Constructor

public HttpClient.Builder()

默认的构造方法。

Public Methods

addInterceptor

展开

Method

public @CheckReturnValue HttpClient.Builder addInterceptor(Interceptor interceptor)

添加应用拦截器,在请求发起之前调用,一次调用只执行一次拦截处理。

Parameters

展开

Name

Description

interceptor

应用拦截器。

Returns

展开

Type

Description

HttpClient.Builder

HttpClient构造器。

addNetworkInterceptor

展开

Method

public @CheckReturnValue HttpClient.Builder addNetworkInterceptor(Interceptor interceptor)

添加网络拦截器,每次请求重试均会执行拦截处理。

Parameters

展开

Name

Description

interceptor

网络拦截器。

Returns

展开

Type

Description

HttpClient.Builder

HttpClient构造器。

build

展开

Method

public HttpClient build()

构造HttpClient实例。

Returns

展开

Type

Description

HttpClient

返回HttpClient实例。

cache

展开

Method

public @CheckReturnValue HttpClient.Builder cache(String directory, long maxSize)

设置响应缓存的配置参数。

Parameters

展开

Name

Description

directory

缓存文件名,存放至“/data/data/包名/cache/”目录下。

maxSize

所有缓存文件的最大字节数,超过此限制则触发LRU(Least Recently Used)算法机制,删除缓存文件。

Returns

展开

Type

Description

HttpClient.Builder

HttpClient构造器。

callTimeout

展开

Method

public @CheckReturnValue HttpClient.Builder callTimeout(int callTimeout)

配置请求超时时间。当您使用全双工模式时,不应设置此参数。

Parameters

展开

Name

Description

callTimeout

请求超时时间,单位:ms,默认值为0(请求超时能力不生效)。

Returns

展开

Type

Description

HttpClient.Builder

HttpClient构造器。

connectTimeout

展开

Method

public @CheckReturnValue HttpClient.Builder connectTimeout(int connectTimeout)

配置连接超时时间。在请求的三次握手阶段,若超过这个时间间隔仍未收到任何建立连接的响应报文,则抛出连接超时中断请求。

Parameters

展开

Name

Description

connectTimeout

连接超时时间,单位:ms,默认值为10000。

Returns

展开

Type

Description

HttpClient.Builder

HttpClient构造器。

enableQuic

展开

Method

public @CheckReturnValue HttpClient.Builder enableQuic(boolean quicEnabled)

配置是否开启QUIC协议,默认不开启。

Parameters

展开

Name

Description

quicEnabled

是否开启QUIC协议,一旦开启,通过此HttpClient实例发起的请求会遵循全局添加的addQuicHint接口描述进行网络通信。默认值为false。

  • true:开启此HttpClient实例的QUIC协议开关
  • false:不开启此HttpClient实例的QUIC协议开关

Returns

展开

Type

Description

HttpClient.Builder

HttpClient构造器。

hostnameVerifier

展开

Method

public @CheckReturnValue HttpClient.Builder hostnameVerifier(HostnameVerifier hostnameVerifier)

设置hostname校验算法。

Parameters

展开

Name

Description

hostnameVerifier

hostname校验类。

Returns

展开

Type

Description

HttpClient.Builder

HttpClient构造器。

options

展开

Method

public @CheckReturnValue HttpClient.Builder options(String options)

配置HttpClient实例的额外配置参数。采用JSON格式。

Parameters

展开

Name

Description

options

额外的配置信息,使用JSON格式。例如:{"disable_weaknetwork_retry":true}。支持参数请参见options

展开

options

Description

disable_weaknetwork_retry

设置是否开启弱网重试,boolean类型。默认值为true。
  • true:开启
  • false:不开启

concurrent_connect_delay

设置复合建链的超时时长,单位:ms,int类型。默认值为500。

enable_concurrent_connect

设置是否开启复合建链,boolean类型。默认值为true。
  • true:开启
  • false:不开启

Returns

展开

Type

Description

HttpClient.Builder

HttpClient构造器。

pingInterval

展开

Method

public @CheckReturnValue HttpClient.Builder pingInterval(int pingInterval)

配置ping帧探测时间间隔,默认值为0(不开启帧探测特性)。仅Http/2.0协议生效,每隔这个间隔向服务器发送ping帧,若出现假连接问题则及时拆链,避免无效时间等待。

Parameters

展开

Name

Description

pingInterval

ping帧探测时间间隔,单位:ms。

Returns

展开

Type

Description

HttpClient.Builder

HttpClient构造器。

proxy

展开

Method

public @CheckReturnValue HttpClient.Builder proxy(Proxy proxy)

配置代理,支持DIRECT(直连,不使用代理)、HTTP(HTTP、FTP等代理)和SOCKS(V4、V5)代理模式。一旦调用了该方法指定了代理服务器,那么通过该对象发起的请求都会访问指定的代理服务器。

Parameters

展开

Name

Description

proxy

代理属性设置,包含代理方式、代理Host和端口。

Returns

展开

Type

Description

HttpClient.Builder

HttpClient构造器。

readTimeout

展开

Method

public @CheckReturnValue HttpClient.Builder readTimeout(int readTimeout)

配置读超时时间。读服务器响应数据时,若超过这个时间间隔还未收到任何服务器数据,则抛出超时异常中断请求。

Parameters

展开

Name

Description

readTimeout

读超时时间,单位:ms,默认值为10000。

Returns

展开

Type

Description

HttpClient.Builder

HttpClient构造器。

retryTimeOnConnectionFailure

展开

Method

public @CheckReturnValue HttpClient.Builder retryTimeOnConnectionFailure(int retryTimeOnConnectionFailure)

配置请求重试次数。

Parameters

展开

Name

Description

retryTimeOnConnectionFailure

请求重试次数,默认值为1。

Returns

展开

Type

Description

HttpClient.Builder

HttpClient构造器。

sslSocketFactory

展开

Method

public @CheckReturnValue HttpClient.Builder sslSocketFactory(SSLSocketFactory sslSocketFactory, X509TrustManager trustManager)

配置HTTPS证书校验相关参数。

Parameters

展开

Name

Description

sslSocketFactory

SSL证书校验类工厂。

trustManager

证书信任管理器类。

Returns

展开

Type

Description

HttpClient.Builder

HttpClient构造器。

writeTimeout

展开

Method

public @CheckReturnValue HttpClient.Builder writeTimeout(int writeTimeout)

配置写超时时间。写服务器请求数据时,若超过这个时间间隔没有任何数据写入服务器,则抛出超时异常中断请求。

Parameters

展开

Name

Description

writeTimeout

写超时时间,单位:ms,默认值为10000。

Returns

展开

Type

Description

HttpClient.Builder

HttpClient构造器。

在 API参考 中进行搜索
请输入您想要搜索的关键词