gpt4 book ai didi

java - 自定义响应头 Jersey/Java

转载 作者:IT老高 更新时间:2023-10-28 12:51:38 26 4
gpt4 key购买 nike

我正在努力实现以下目标。

从 Request 中读取自定义 header 及其值:

name: username

现在,在响应时,我想在 HTTP 响应中返回相同的 header name:value 对。

我正在使用 JAX-RS 网络服务的 Jersey 2.0 实现。

当我发送请求 URL Http://localhost/test/ 时,请求 header 也被传递(暂时,虽然 Firefox 插件 - 硬编码它们)。

收到对该 URL 的请求后,将调用以下方法:

@GET
@Produces(MediaType.APPLICATION_JSON)
public UserClass getValues(@Context HttpHeaders header) {
MultivaluedMap<String, String> headerParams = header.getRequestHeaders();
String userKey = "name";
headerParams.get(userKey);

// ...

return user_object;
}

我怎样才能做到这一点?任何指针都会很棒!

最佳答案

我认为使用 javax.ws.rs.core.Response 更优雅,它是 Jersey 的一部分。只是为了扩展之前的答案,这里是一个简单的例子:

    @GET
@Produces({ MediaType.APPLICATION_JSON })
@Path("/values")
public Response getValues(String body) {

//Prepare your entity

Response response = Response.status(200).
entity(yourEntity).
header("yourHeaderName", "yourHeaderValue").build();

return response;
}

关于java - 自定义响应头 Jersey/Java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17883177/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com