http预请求options、Java请求
在有很多情况下,当我们在js⾥⾯调⽤⼀次ajax请求时,在浏览器那边却会查询到两次请求,第⼀次的Request Method参数是OPTIONS,还有⼀次就是我们真正的请求,⽐如get或是post请求⽅式
查阅相关的资料之后发现,这是浏览器对复杂跨域请求的⼀种处理⽅式,在真正发送请求之前,会先进⾏⼀次预请求,就是我们刚刚说到的参数为OPTIONS的第⼀次请求,他的作⽤是⽤于试探性的服务器响应是否正确,即是否能接受真正的请求,如果在options请求之后获取到的响应是拒绝性质的,例如500等http状态,那么它就会停⽌第⼆次的真正请求的访问
⼤致说明⼀下,有三种⽅式会导致这种现象:
1:请求的⽅法不是GET/HEAD/POST
2:POST请求的Content-Type并⾮application/x-www-form-urlencoded, multipart/form-data, 或text/plain
3:请求设置了⾃定义的header字段
⽐如我的我的Content-Type设置为“application/json;charset=utf-8”并且⾃定义了header选项导致了这种情况。
The DELETE Method
HTTP提供了⼀个与PUT⽅法对应的DELETE⽅法。⼀个DELETE请求将需要从Web服务器删除的内容指定为请求⾏中的资源部分。
java调用js的ajaxDELETE⽅法唯⼀有趣的地⽅在于当你接收了⼀个标识为200 OK的响应的时候,那并不意味着指定的资源已经被删除了。那仅仅说明服务器接收到了删除资源的命令。这⼀例外允许了出于安全考虑的⼈为的⼲预

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。