Ada*_*ume 40 java servlets http status java-ee
我正在使用Java的RESTful Web服务.如果出现问题,我需要一种向客户端发送错误消息的好方法.
根据Javadoc,由于消息参数含义模糊,HttpServletResponse.setStatus(int status, String message)因此不推荐使用.
是否有一种首选方式来设置响应的状态消息或" 原因短语 "?该sendError(int, String)方法没有这样做.
编辑:为了澄清,我想修改HTTP状态行,即"HTTP/1.1 404 Not Found"不是正文内容.具体来说,我想发送回复"HTTP/1.1 400 Missing customerNumber parameter".
Han*_*Gay 21
我不认为任何RESTful客户端会期望查看原因,以找出问题所在; 我见过/使用过的大多数RESTful服务都会在响应正文中发送标准状态信息和扩展消息.sendError(int, String)适合那种情况.
ars*_*ars 19
如果您使用的是Tomcat,请参阅设置org.apache.coyote.USE_CUSTOM_STATUS_MSG_IN_HEADER:
http://tomcat.apache.org/tomcat-5.5-doc/config/systemprops.html
有关原始漏洞的一些详细信息,请参阅此页面:
http://www.securityfocus.com/archive/1/archive/1/495021/100/0/threaded
laz*_*laz 12
澄清之后,我在Tomcat中尝试了这个.执行
response.sendError(HttpServletResponse.SC_BAD_REQUEST, "message goes here");
Run Code Online (Sandbox Code Playgroud)
回报
HTTP/1.1 400 message goes here
Run Code Online (Sandbox Code Playgroud)
作为回应的第一行.
您正在使用的servlet容器一定存在问题.
| 归档时间: |
|
| 查看次数: |
64959 次 |
| 最近记录: |