【java】后台如何处理OPTIONS请求
headers: 'Content-Type': 'application/json'
针对一个接口“/getProjectsByUserId”
前端发POST请求,并且headers: 'Content-Type': 'application/json',
所以POST请求为复杂请求,会先发送个OPTIONS请求。
但是我的后台里面没有写关于/getProjectsByUserId的OPTIONS请求。
所以后台会报错RESTEASY003655: No resource method found for options, return OK with Allow header
前台报错500
我在专门写个OPTIONS请求(让它返回200)的话.OPTIONS请求之后不会继续执行POST请求了。
然后各种spring跨域的配置都不好使。比方说写filter或者改配置(http://www.mamicode.com/info-...)或者这种
请问还有什么办法。。
回答
我用的网上的filter。
比较奇葩的是我需要@Order(1)来设定filter优先级最高才能生效。
这个是跨域问题,预检请求OPTIONS
返回200
没问题,同时还应该设置允许跨域;另外,你这个接口是用来处理POST
的,那么不止需要处理OPTIONS
,也要支持POST
处理啊
OPTION请求返回的应该是204吧。
应该是在filter中检验是否允许
option为预请求,跨域或者复杂请求,浏览器都会自动发起一个预先请求,可以设置options的缓存时间
// 本次预检请求的有效期,默认为20天header('Access-Control-Max-Age: 1728000');
以上是 【java】后台如何处理OPTIONS请求 的全部内容, 来源链接: utcz.com/a/73228.html