- java.lang.Object
-
- jdk.incubator.http.HttpClient.Builder
-
- Enclosing class:
- HttpClient
public abstract static class HttpClient.Builder extends Object
不可变的建筑师HttpClient
s。HttpClient.Builder
是通过调用HttpClient.newBuilder()
创建的。
Incubating Feature.将在以后的版本中删除。每一个在这个类中的setter方法修改生成器的状态并返回此 (即相同的实例)。 方法不同步,不应该从多个线程调用而不需要外部同步。
build()
每次调用时返回一个新的HttpClient
。- 从以下版本开始:
- 9
-
-
构造方法摘要
构造方法 Modifier Constructor 描述 protected
Builder()
-
方法摘要
所有方法 接口方法 抽象方法 Modifier and Type 方法 描述 abstract HttpClient.Builder
authenticator(Authenticator a)
设置用于HTTP身份验证的身份验证器。abstract HttpClient
build()
返回从此构建器的当前状态构建的HttpClient
。abstract HttpClient.Builder
cookieManager(CookieManager cookieManager)
设置一个cookie管理器。abstract HttpClient.Builder
executor(Executor executor)
将执行器设置为用于异步任务。abstract HttpClient.Builder
followRedirects(HttpClient.Redirect policy)
指定请求是否会自动跟踪服务器发出的重定向。abstract HttpClient.Builder
priority(int priority)
设置从此客户端发送的任何HTTP / 2请求的默认优先级。abstract HttpClient.Builder
proxy(ProxySelector selector)
为此客户设置一个ProxySelector
。abstract HttpClient.Builder
sslContext(SSLContext sslContext)
设置一个SSLContext
。abstract HttpClient.Builder
sslParameters(SSLParameters sslParameters)
设置一个SSLParameters
。abstract HttpClient.Builder
version(HttpClient.Version version)
在可能的情况下请求特定的HTTP协议版本。
-
-
-
方法详细信息
-
cookieManager
public abstract HttpClient.Builder cookieManager(CookieManager cookieManager)
设置一个cookie管理器。- 参数
-
cookieManager
- cookie管理器 - 结果
- 这个建设者
-
sslContext
public abstract HttpClient.Builder sslContext(SSLContext sslContext)
设置一个SSLContext
。 如果设置了安全管理员,则呼叫者必须具有NetPermission
("setSSLContext"
)不调用此方法的效果是使用默认值
SSLContext
,这通常适用于不需要指定协议或需要客户端认证的客户端应用程序。- 参数
-
sslContext
- SSLContext - 结果
- 这个建设者
- 异常
-
SecurityException
- 如果安全管理器已设置且呼叫者没有任何必需的权限
-
sslParameters
public abstract HttpClient.Builder sslParameters(SSLParameters sslParameters)
设置一个SSLParameters
。 如果未调用此方法,则使用默认的参数集。 给定对象的内容被复制。 由HTTP协议实现(例如应用协议列表)内部使用的一些参数不应由呼叫者设置,因为它们被忽略。- 参数
-
sslParameters
- SSLParameters - 结果
- 这个建设者
-
executor
public abstract HttpClient.Builder executor(Executor executor)
将执行器设置为用于异步任务。 如果未调用此方法,则会设置默认执行程序,这是从Executors.newCachedThreadPool
返回的执行程序 。- 参数
-
执行人
executor
- 结果
- 这个建设者
-
followRedirects
public abstract HttpClient.Builder followRedirects(HttpClient.Redirect policy)
- 参数
-
policy
- 重定向策略 - 结果
- 这个建设者
-
version
public abstract HttpClient.Builder version(HttpClient.Version version)
在可能的情况下请求特定的HTTP协议版本。 如果未设置,版本默认为HttpClient.Version.HTTP_2
。 如果设置了HttpClient.Version.HTTP_2
,则每个请求将尝试升级到HTTP / 2。 如果升级成功,则对该请求的响应将使用HTTP / 2,并且所有后续请求和对同一个origin server的响应将使用HTTP / 2。 如果升级失败,那么响应将使用HTTP / 1.1进行处理- 参数
-
version
- 请求的HTTP协议版本 - 结果
- 这个建设者
-
priority
public abstract HttpClient.Builder priority(int priority)
设置从此客户端发送的任何HTTP / 2请求的默认优先级。 提供的价值必须介于1
和256
(含)之间。- 参数
-
priority
- 优先权重 - 结果
- 这个建设者
- 异常
-
IllegalArgumentException
- 如果给定的优先级超出范围
-
proxy
public abstract HttpClient.Builder proxy(ProxySelector selector)
- Implementation Note:
-
ProxySelector.of(InetSocketAddress)
提供了一个ProxySelector
,它为所有请求使用一个代理。 - 参数
-
selector
- ProxySelector - 结果
- 这个建设者
-
authenticator
public abstract HttpClient.Builder authenticator(Authenticator a)
设置用于HTTP身份验证的身份验证器。- 参数
-
a
- 认证器 - 结果
- 这个建设者
-
build
public abstract HttpClient build()
返回从此构建器的当前状态构建的HttpClient
。- 结果
- 这个建设者
-
-