当前位置: 移动技术网 > IT编程>开发语言>Jquery > Ajax跨域请求,设置content

Ajax跨域请求,设置content

2019年05月18日  | 移动技术网IT编程  | 我要评论

在使用ajax跨域请求时,如果设置header的contenttype为application/json,会分两次发送请求。第

一次先发送method为options的请求到服务器,这个请求会询问服务器支持哪些请求方法(get,post等),

支持哪些请求头等等服务器的支持情况。等到这个请求返回后,如果原来我们准备发送的请求符合服务器的规则,那么才会继续发送第二个请求,否则会在console中报错。

 

注意note后面的描述,在跨域的时候,除了contenttype为application/x-www-form-urlencoded, multipart/form-data或者text/plain外,都会触发浏览器先发送方法为options的请求。

比如说,你原来的请求是方法方法post,如果第一个请求返回的结果header中的allow属性并没有post方法,

那么第二个请求是不会发送的,此时浏览器控制台会报错,告诉你post方法并不被服务器支持。

 

 

不仅如此,如果想要用contenttype:application/json发送跨域请求,服务器端还必须设置一个名为

access-control-allow-headers 的header,将它的值设置为 content-type,表明服务器能够接收

到前端发送的请求中的contenttype属性并使用它的值。否则第二次请求也是发不出去的,浏览器console会

报错,并提示你服务器没有设置access-control-allow-headers。



如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网