Java:如何从响应中删除 header?
Java: How to remove a header from a response?
我有一个由 ResponseBuilder 创建的 Response,如果 header 已经存在,我想从中删除它,以确保我不会为同一个 [=17] 设置多个值=] (content-disposition
).
我该怎么做?
对于我的用例,我发现我可以删除任何现有的 header,方法是先将 header 设置为 null
,然后再设置新值。
例如
import javax.ws.rs.core.Response;
import javax.ws.rs.core.Response.ResponseBuilder;
@Path("response_test")
@GET
public Response response(){
// Pretend we've got a response builder that was created by
// some code we don't control
ResponseBuilder builder = Response.status(200);
builder.entity("Test Me");
builder.header("content-disposition", "attachment; filename=a.txt");
// Now remove any "content-disposition" header that's there
// and replace it with our updated header.
builder.header("content-disposition", null);
builder.header("content-disposition", "attachment; filename=b.txt");
Response response = builder.build();
return response;
}
我有一个由 ResponseBuilder 创建的 Response,如果 header 已经存在,我想从中删除它,以确保我不会为同一个 [=17] 设置多个值=] (content-disposition
).
我该怎么做?
对于我的用例,我发现我可以删除任何现有的 header,方法是先将 header 设置为 null
,然后再设置新值。
例如
import javax.ws.rs.core.Response;
import javax.ws.rs.core.Response.ResponseBuilder;
@Path("response_test")
@GET
public Response response(){
// Pretend we've got a response builder that was created by
// some code we don't control
ResponseBuilder builder = Response.status(200);
builder.entity("Test Me");
builder.header("content-disposition", "attachment; filename=a.txt");
// Now remove any "content-disposition" header that's there
// and replace it with our updated header.
builder.header("content-disposition", null);
builder.header("content-disposition", "attachment; filename=b.txt");
Response response = builder.build();
return response;
}