Return 来自球衣的 HTTP 代码错误时分块响应
Return HTTP codes from jersey Chunked response when in error
我得到了三个服务,就像球衣文档中用分块响应描述的那样:
https://jersey.java.net/documentation/latest/async.html
但我必须添加用户访问控制并相应地使用 403 错误代码进行响应,但找不到向响应添加状态或构建错误响应的方法,就像在返回实体主体类型的服务中那样。
有什么想法吗?
您可以 return Response
而不是 ChunkedOutPut
,然后将 ChunkedOutPut
或错误消息包装在 Response
对象中,如下所示。
@GET
public Response getChunkedResponse() throws IOException {
// Check access here
if (!authorized()) {
Response.status(403).entity("No Access").build();
} else {
final ChunkedOutput<String> output = new ChunkedOutput<String>(String.class);
new Thread() {
public void run() {
// Your operation which returns chunked output.
}
}.start();
return Response.ok(output).build();
}
}
我得到了三个服务,就像球衣文档中用分块响应描述的那样: https://jersey.java.net/documentation/latest/async.html
但我必须添加用户访问控制并相应地使用 403 错误代码进行响应,但找不到向响应添加状态或构建错误响应的方法,就像在返回实体主体类型的服务中那样。
有什么想法吗?
您可以 return Response
而不是 ChunkedOutPut
,然后将 ChunkedOutPut
或错误消息包装在 Response
对象中,如下所示。
@GET
public Response getChunkedResponse() throws IOException {
// Check access here
if (!authorized()) {
Response.status(403).entity("No Access").build();
} else {
final ChunkedOutput<String> output = new ChunkedOutput<String>(String.class);
new Thread() {
public void run() {
// Your operation which returns chunked output.
}
}.start();
return Response.ok(output).build();
}
}