【问题标题】:Blocking POST/GET Method in a Web application在 Web 应用程序中阻止 POST/GET 方法
【发布时间】:2013-11-25 14:48:32
【问题描述】:
如何阻止部署在应用服务器中的 Web 应用程序中的 POST/GET 方法。
这样通过被阻止的方法访问时会抛出http状态码405 [Method Not Allowed]。
HTTP 状态码 [405] 的说明:
使用该资源不支持的请求方法向资源发出请求;[2] 例如,在需要通过 POST 呈现数据的表单上使用 GET,或在只读资源上使用 PUT。
【问题讨论】:
标签:
jakarta-ee
war
application-server
【解决方案1】:
如果阻塞意味着不接受任何传入的GET / POST 请求,您有两种解决方案:
- 定义将阻止请求的
Filter
- 在 Web 服务器级别执行此操作
在过滤器中,您可以这样做:
public void doFilter(ServletRequest request,
ServletResponse response,
FilterChain chain)
((HttpServletResponse) response).sendError(405,
"the error message" );
}