相关疑难解决方法(0)

如何在Spring Boot中处理HTTP OPTIONS请求?

首先,我读过" 如何使用Spring MVC处理HTTP OPTIONS? "但答案似乎并不直接适用于Spring Boot.

看起来我应该这样做:

通过将其设置为dispatchOptionsRequest来配置dispatcherServlet true

但是如何做到这一点,因为我没有XML配置,或者DispatcherServlet我的代码中有任何类型的初始化器类(这个答案提到)?

@RestController类中,我有一个这样的方法,目前不会被调用.

@RequestMapping(value = "/foo", method = RequestMethod.OPTIONS)
public ResponseEntity options(HttpServletResponse response) {
    log.info("OPTIONS /foo called");
    response.setHeader("Allow", "HEAD,GET,PUT,OPTIONS");
    return new ResponseEntity(HttpStatus.OK);
}
Run Code Online (Sandbox Code Playgroud)

Spring Boot 1.2.7.RELEASE; 一个简单的设置与Spring REST指南中的设置没有什么不同 .

spring spring-mvc http-options-method spring-boot

27
推荐指数
1
解决办法
3万
查看次数

如何在Android上使用我自己的方法和HttpURLConnection对象?

根据void setRequestMethod (String method)这里的文件:

https://developer.android.com/reference/java/net/HttpURLConnection.html#setRequestMethod%28java.lang.String%29

允许的方法仅限于:

  • 得到
  • POST
  • OPTIONS
  • 删除
  • 跟踪

我有一个服务器提供对消息列表的访问,我有一个选项是检索一条消息:

NEXT /api/1/message
Run Code Online (Sandbox Code Playgroud)

但是,当我尝试将NEXT方法放在JavaScript HttpURLConnection中时,我收到一个错误:

E/MsgProcessingService:处理消息时失败:java.net.ProtocolException:未知方法'NEXT'; 必须是[OPTIONS,GET,HEAD,POST,PUT,DELETE,TRACE]之一

是否存在绕过该方法限制的非黑客方式?

显然,我可以在我的服务器上创建一个新的访问点,但我希望我不必这样做......

GET /api/1/message/next
Run Code Online (Sandbox Code Playgroud)

java android http-method

2
推荐指数
1
解决办法
121
查看次数