【发布时间】:2013-05-27 06:44:30
【问题描述】:
我目前正在尝试使用完全封装 http 响应的 Java/EE(5) 构建一个 REST Web 服务,因此每个请求都应该返回响应代码 200(OK)并且应该如下所示:
{
"msg" : { // imagine some datastructure here },
"error" : {
"code" : 200 // http response code
"status" : "OK" // some string defining this
}
}
我最喜欢的框架是 JAX-RS(我们计划很快迁移到 EE6,所以迁移是开发这个的主题之一),但是 JAX-RS 可以做到吗?
【问题讨论】:
-
那不是 REST。为什么要再做一次 SOAP?
-
我很困惑,@LutzHorn。您在哪里看到 SOAP?
-
不要在结果中嵌入错误代码,而是将其作为 HTTP 标头发送。
-
@Rob 在 SOAP 中,服务总是返回
200 OK。请求的实际结果嵌入在响应正文中。这就是你打算做的。那不是 REST。 -
是的。您可以使用 JAX-RS 将响应代码、标头和正文设置为您想要的。虽然我不会推荐它。