我正在开发一个 RESTful 网络服务项目,我正在使用 Apache Tomcat 和 JAX-RS。
我想接受来自客户端的 DELETE 请求,但每当我从 Advanced REST 客户端 Chrome 插件发送 DELETE 请求时,它都会给出响应代码 403 Forbidden。
那么我怎样才能让 Apche Tomcat 接受 DELETE 请求呢?
最佳答案
由于我的 CORS 过滤器,Tomcat 为我阻止了 DELETE 方法。
我需要在我的 web.xml 文件中注册新的过滤器。这是一个非常宽松的示例:
<filter>
<filter-name>CorsFilter</filter-name>
<filter-class>org.apache.catalina.filters.CorsFilter</filter-class>
<init-param>
<param-name>cors.allowed.headers</param-name>
<param-value>Accept,Accept-Encoding,Accept-Language,Access-Control-Request-Method,Access-Control-Request-Headers,Authorization,Connection,Content-Type,Host,Origin,Referer,Token-Id,User-Agent, X-Requested-With</param-value>
</init-param>
<init-param>
<param-name>cors.allowed.origins</param-name>
<param-value>*</param-value>
</init-param>
<init-param>
<param-name>cors.allowed.methods</param-name>
<param-value>GET, POST, PUT, DELETE, OPTIONS, HEAD</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>CorsFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
关于java - 如何让 Apache Tomcat 接受 DELETE 方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17853812/