HTTP requests的建设者 。实例HttpRequest.Builder是通过致电HttpRequest.newBuilder(URI)或HttpRequest.newBuilder()创建的。
构建器可用于配置每个请求状态,例如:请求URI,请求方法(除非显式设置,默认为GET),特定请求标头等。每个setter方法都会修改构建器的状态并返回相同的实例。这些方法不同步,不应在没有外部同步的情况下从多个线程调用。build方法每次调用时都返回一个新的HttpRequest。一旦建成HttpRequest是不可变的,并且可以多次发送。
请注意,并非所有请求标头都可以由用户代码设置。有些是出于安全原因而受到限制,而其他一些(例如与身份验证,重定向和Cookie管理相关的标头)可能由特定API管理,而不是通过直接用户设置标头管理。
构建并返回HttpRequest。根据当前状态返回此Builder的精确副本。 将此构建器的请求方法设置为DELETE。 请求服务器在发送正文之前确认请求。 将此构建器的请求方法设置为GET。 将给定的名称值对添加到此请求的标头集。 将给定的名称值对添加到此请求的标头集。 将此构建器的请求方法和请求主体设置为给定值。 将此构建器的请求方法设置为POST,并将其请求主体发布者设置为给定值。 将此构建器的请求方法设置为PUT,并将其请求主体发布者设置为给定值。 将给定名称值对设置为此请求的标头集。 设置此请求的超时。 设置此HttpRequest的请求URI。为此请求设置首选HttpClient.Version。设置此HttpRequest的请求URI。请求服务器在发送正文之前确认请求。默认情况下禁用此功能。如果启用,则在客户端发送请求正文之前,请求服务器发送错误响应或100 Continue响应。这意味着在收到此临时响应之前,不会调用请求的请求发布者。为此请求设置首选HttpClient.Version。应检查相应的HttpResponse以查找实际使用的版本。如果未在请求中设置版本,则请求的版本将是发送HttpClient的版本 。
将给定的名称值对添加到此请求的标头集。给定值将添加到该名称的值列表中。将给定的名称值对添加到此请求的标头集。提供的String实例必须作为标题名称和标题值进行备用。要将多个值添加到同一名称,则必须为每个新值提供相同的名称。设置此请求的超时。如果在指定的超时内未收到响应,则从HttpClient::send抛出HttpTimeoutException或使用HttpTimeoutException异常完成HttpTimeoutException。不设置超时的效果与设置无限持续时间相同,即。永远阻止。将给定名称值对设置为此请求的标头集。这会覆盖以前为name设置的任何值。将此构建器的请求方法设置为GET。这是默认值。将此构建器的请求方法设置为POST,并将其请求主体发布者设置为给定值。 将此构建器的请求方法设置为PUT,并将其请求主体发布者设置为给定值。 将此构建器的请求方法设置为DELETE。 将此构建器的请求方法和请求主体设置为给定值。建立并返回HttpRequest。根据当前状态返回此Builder的精确副本。然后,可以独立于此构建器修改新构建器。
变量和类型 | 方法 | 描述 |
---|---|---|
HttpRequest | build () |
构建并返回HttpRequest。 |
HttpRequest.Builder | copy () |
根据当前状态返回此Builder的精确副本。 |
HttpRequest.Builder | DELETE () |
将此构建器的请求方法设置为DELETE。 |
HttpRequest.Builder | expectContinue (boolean enable) |
请求服务器在发送正文之前确认请求。 |
HttpRequest.Builder | GET () |
将此构建器的请求方法设置为GET。 |
HttpRequest.Builder | header ( String name, String value) |
将给定的名称值对添加到此请求的标头集。 |
HttpRequest.Builder | headers ( String… headers) |
将给定的名称值对添加到此请求的标头集。 |
HttpRequest.Builder | method ( String method, HttpRequest.BodyPublisher bodyPublisher) |
将此构建器的请求方法和请求主体设置为给定值。 |
HttpRequest.Builder | POST ( HttpRequest.BodyPublisher bodyPublisher) |
将此构建器的请求方法设置为POST,并将其请求主体发布者设置为给定值。 |
HttpRequest.Builder | PUT ( HttpRequest.BodyPublisher bodyPublisher) |
将此构建器的请求方法设置为PUT,并将其请求主体发布者设置为给定值。 |
HttpRequest.Builder | setHeader ( String name, String value) |
将给定名称值对设置为此请求的标头集。 |
HttpRequest.Builder | timeout ( Duration duration) |
设置此请求的超时。 |
HttpRequest.Builder | uri ( URI uri) |
设置此HttpRequest的请求URI。 |
HttpRequest.Builder | version ( HttpClient.Version version) |
为此请求设置首选HttpClient.Version。 |