我正在处理一个REST后端,我需要将错误信息(消息以及自定义的应用程序键和代码)作为JSON发送回前端。
我不确定是否将JSON包含到sendError
方法的sendError
参数(来自HttpServletResponse
)中,如下所示:
void sendError(int sc,
java.lang.String msg)
throws java.io.IOException
..。或按以下方式使用响应的实际有效负载:
response.getWriter().write(json);
有谁能告诉我哪一种是最好的方法吗?
发布于 2015-09-09 12:26:48
sendError
将内容类型设置为"text/html"
,因此不能很好地将自定义json错误消息推送给客户端。
你最好自己设置状态代码
response.setStatus(HttpServletResponse.SC_INTERNAL_SERVER_ERROR);
然后使用编写器编写您想要的JSON字符串。
这显然是很低的水平。如果您正在使用某种REST框架,它通常很好地支持将异常自动转换为JSON格式。这样,您只需抛出一个异常,框架就可以完成其余的操作。
https://stackoverflow.com/questions/32479458
复制相似问题