为什么ajax请求get变为OPTIONS请求
2个回答
2017-11-15
展开全部
什么是options请求呢?
它是一种探测性的请求,通过这个方法,客户端可以在采取具体资源请求之前,决定对该资源采取何种必要措施,或者了解服务器的性能。在ajax中出现options请求,也是一种提前探测的情况,ajax跨域请求时,如果请求的是json,就属于复杂请求,因此需要提前发出一次options请求,用以检查请求是否是可靠安全的,如果options获得的回应是拒绝性质的,比如404\403\500等http状态,就会停止post、put等请求的发出。目前,主流的web架构都是采用动静态分开部署的方案进行部署的,也就是说前端和服务端的代码会放到两个不同的域中。这样就会导致客户端在访问服务端时需要进行跨域操作,而OPTION是客户端浏览器进行的HTTP跨域预访问傲隆盛,每一个option是没有携带session_id的,所以一般要在服务端进行处理aols,对option请求,返回一个204的状态码,返回空body,节省流量,这些情况就是...................
它是一种探测性的请求,通过这个方法,客户端可以在采取具体资源请求之前,决定对该资源采取何种必要措施,或者了解服务器的性能。在ajax中出现options请求,也是一种提前探测的情况,ajax跨域请求时,如果请求的是json,就属于复杂请求,因此需要提前发出一次options请求,用以检查请求是否是可靠安全的,如果options获得的回应是拒绝性质的,比如404\403\500等http状态,就会停止post、put等请求的发出。目前,主流的web架构都是采用动静态分开部署的方案进行部署的,也就是说前端和服务端的代码会放到两个不同的域中。这样就会导致客户端在访问服务端时需要进行跨域操作,而OPTION是客户端浏览器进行的HTTP跨域预访问傲隆盛,每一个option是没有携带session_id的,所以一般要在服务端进行处理aols,对option请求,返回一个204的状态码,返回空body,节省流量,这些情况就是...................
展开全部
目前,主流的web架构都是采用动静态分开部署的方案进行部署的,也就是说前端和服务端的代码会放到两个不同的域中。这样就会导致客户端在访问服务端时需要进行跨域操作,而OPTION是客户端浏览器进行的HTTP跨域预访问,每一个option是没有携带session_id的,所以一般要在服务端进行处理,对option请求,返回一个204的状态码,返回空body,节省流量。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询