java - 如何在 Spring MVC 2.5 应用程序中更改 HTTP OPTIONS 请求的响应?

标签 java http spring-mvc

这听起来像是一个微不足道的问题,但不知何故我似乎无法弄明白。

我有一个 Spring MVC 应用程序。除了 GET 和 POST,我不支持任何 http 方法。我的所有 Controller bean 中都有以下设置:

<property name="supportedMethods" value="GET,POST"/>

但是,发送到我的应用程序的 OPTIONS 请求会发回一个响应,显示所有允许的 http 方法。

如何更改 OPTIONS 响应以仅显示允许的 GET 和 POST 方法?我知道我可以通过覆盖 doOptions 方法在 servlet 中执行此操作,但我不确定 Spring MVC 应用程序。我是否必须扩展 DispatcherServlet 并覆盖 doOptions

该应用程序使用 Spring mvc 2.5.6 以及基于 SimpleFormController 的 Controller 和基于 xml 的配置。

最佳答案

警告:我没有处理 OPTIONS 消息。

在您的请求处理程序(用@Controller 注释)中,您可以使用 RequestMethod.OPTIONS 来处理选项请求。例如你可以使用

  ... stuff ...  
  @RequestMapping(RequestMethod.OPTIONS)  
  public String processOptions()
  {
  ... stuff ...
  }

关于java - 如何在 Spring MVC 2.5 应用程序中更改 HTTP OPTIONS 请求的响应?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5171689/

相关文章:

Apache 没有发送 304 响应(如果启用了 mod_deflate 和 AddOutputFilterByType)

java - Java 中的 BufferedImage 到 BMP

java - 如何通过镜头让玩家被摧毁?

http - 为用户与其他实体交互构建 URL 的 RESTful 方式是什么?

http - 为 mux gorilla 返回 404 的路由

java - Spring beans 的键为 Map<String,Foo>

java - 创建名称为 'mvcValidator' 的 bean 时出错

java - Spring 安全不适用于 angularJS

java - 使用 java 库和 Lucee 将表情符号转换为 html 十六进制

java - 如何打印 ArrayList 中数组中的单个元素