gpt4 book ai didi

java - 如何在 RESTful Web 服务中使用 Jersey 框架抛出 HTTP 204 状态代码?

转载 作者:太空狗 更新时间:2023-10-29 22:42:52 25 4
gpt4 key购买 nike

我正在使用 jersey 框架开发 RESTful 网络服务。我使用以下代码抛出各种 HTTP 状态代码和响应:

public class RestNoContentException extends WebApplicationException 
{
public RestNoContentException(String message)
{
super(Response.status(Status.NO_CONTENT)
.entity(message).type("text/plain")
.build());
}
}

在使用 Firefox Mozilla 休息客户端工具测试 REST 网络服务时,它显示 200 OK 状态而不是 204 NO CONTENT。我处理其他状态代码的方式与处理状态代码 204 的方式相同。其他状态代码在 rest 客户端工具上正确显示,但是当显示 204 状态代码时,它显示 200 OK 状态代码。

有人可以帮我解决这个问题吗?我错过了什么?

最佳答案

首先,204 属于响应代码的“成功”类别,因此将其作为异常结果返回是一件非常非常奇怪的事情。

其次,204 表示“无内容”,意思是响应不包含任何实体,但您在其中放入了一个实体。很可能 Jersey 正在为您将其切换为 200,这与 204 基本相同,只是它包含一个响应实体。

最后,您可以通过几个内置行为非常简单地获得 204 响应:void 方法和 null 返回值都映射到 204 响应。否则,只需返回 Response.status(204).build()

关于java - 如何在 RESTful Web 服务中使用 Jersey 框架抛出 HTTP 204 状态代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14102797/

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