You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何为已有的HttpRequest添加请求头集合?

给已有的HttpRequest添加请求头集合的实现方法

Java中的HttpRequest是不可变类,无法直接修改原有实例的请求头。要添加请求头集合,你需要通过原有请求的newBuilder()方法创建构建器,在构建器中批量添加请求头后,生成新的HttpRequest实例返回。

实现代码示例

public HttpRequest fix(HttpRequest request) {
    // 基于原有请求创建构建器
    HttpRequest.Builder builder = request.newBuilder();
    
    // 方式1:添加单个请求头
    builder.header("X-Custom-1", "value1");
    
    // 方式2:批量添加请求头集合(以Map为例)
    Map<String, String> additionalHeaders = Map.of(
        "Content-Type", "application/json",
        "Authorization", "Bearer your-auth-token",
        "X-Request-Id", "abc123"
    );
    // 遍历集合批量添加
    additionalHeaders.forEach(builder::header);
    
    // 构建并返回新的HttpRequest实例
    return builder.build();
}

注意事项

  • 如果需要覆盖同名请求头,不要使用header()方法(该方法会追加值),改用setHeader()方法,它会替换原有请求头的所有值:
    // 替换Content-Type请求头
    builder.setHeader("Content-Type", "text/plain");
    

内容的提问来源于stack exchange,提问作者George

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.22 21:57:18