java.lang.Object
org.miaixz.bus.http.Request.Builder
- Enclosing class:
Request
Request 构建器,用于创建和修改 Request 实例。
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescription添加指定名称和值的头部,保留现有同名头部。build()构建 Request 实例。cacheControl(CacheControl cacheControl) 设置缓存控制头部。delete()设置为 DELETE 请求(无请求体)。delete(RequestBody body) 设置为 DELETE 请求(带请求体)。get()设置为 GET 请求。head()设置为 HEAD 请求。设置指定名称的头部值,替换现有同名头部。设置所有头部,替换现有头部。method(String method, RequestBody body) 设置 HTTP 方法和请求体。patch(RequestBody body) 设置为 PATCH 请求。post(RequestBody body) 设置为 POST 请求。put(RequestBody body) 设置为 PUT 请求。removeHeader(String name) 移除指定名称的所有头部。<T> Request.Builder使用指定类型作为键附加标签。使用Object.class作为键附加标签。设置请求的 URL(字符串格式)。设置请求的 URL(URL 对象)。设置请求的 URL。
-
Constructor Details
-
Builder
public Builder()默认构造函数,初始化 GET 请求。
-
-
Method Details
-
url
设置请求的 URL。- Parameters:
url- UnoUrl 对象- Returns:
- 当前 Builder 实例
- Throws:
NullPointerException- 如果 url 为 null
-
url
设置请求的 URL(字符串格式)。将 WebSocket URL(ws: 或 wss:)转换为 HTTP URL(http: 或 https:)。
- Parameters:
url- URL 字符串- Returns:
- 当前 Builder 实例
- Throws:
NullPointerException- 如果 url 为 nullIllegalArgumentException- 如果 URL 无效
-
url
设置请求的 URL(URL 对象)。- Parameters:
url- URL 对象- Returns:
- 当前 Builder 实例
- Throws:
NullPointerException- 如果 url 为 nullIllegalArgumentException- 如果 URL 方案不是 http 或 https
-
header
设置指定名称的头部值,替换现有同名头部。- Parameters:
name- 头部名称value- 头部值- Returns:
- 当前 Builder 实例
-
addHeader
添加指定名称和值的头部,保留现有同名头部。对于某些头部(如 Content-Length、Content-Encoding),Http 客户端可能根据请求体替换值。
- Parameters:
name- 头部名称value- 头部值- Returns:
- 当前 Builder 实例
-
removeHeader
移除指定名称的所有头部。- Parameters:
name- 头部名称- Returns:
- 当前 Builder 实例
-
headers
设置所有头部,替换现有头部。- Parameters:
headers- Headers 对象- Returns:
- 当前 Builder 实例
-
cacheControl
设置缓存控制头部。替换现有的 Cache-Control 头部。如果 cacheControl 无指令,移除 Cache-Control 头部。
- Parameters:
cacheControl- CacheControl 对象- Returns:
- 当前 Builder 实例
-
get
设置为 GET 请求。- Returns:
- 当前 Builder 实例
-
head
设置为 HEAD 请求。- Returns:
- 当前 Builder 实例
-
post
设置为 POST 请求。- Parameters:
body- 请求体- Returns:
- 当前 Builder 实例
-
delete
设置为 DELETE 请求(带请求体)。- Parameters:
body- 请求体- Returns:
- 当前 Builder 实例
-
delete
设置为 DELETE 请求(无请求体)。- Returns:
- 当前 Builder 实例
-
put
设置为 PUT 请求。- Parameters:
body- 请求体- Returns:
- 当前 Builder 实例
-
patch
设置为 PATCH 请求。- Parameters:
body- 请求体- Returns:
- 当前 Builder 实例
-
method
设置 HTTP 方法和请求体。- Parameters:
method- HTTP 方法body- 请求体(可能为 null)- Returns:
- 当前 Builder 实例
- Throws:
NullPointerException- 如果 method 为 nullIllegalArgumentException- 如果 method 为空、请求体与方法不匹配
-
tag
使用Object.class作为键附加标签。- Parameters:
tag- 标签对象- Returns:
- 当前 Builder 实例
-
tag
使用指定类型作为键附加标签。标签用于附加调试、计时或其他元数据,可在拦截器、事件监听器或回调中读取。 使用 null 移除指定类型的现有标签。
- Type Parameters:
T- 标签值的类型- Parameters:
type- 标签类型tag- 标签值(可能为 null)- Returns:
- 当前 Builder 实例
- Throws:
NullPointerException- 如果 type 为 null
-
build
构建 Request 实例。- Returns:
- Request 对象
- Throws:
IllegalStateException- 如果 URL 未设置
-