在上一篇《【访问 www.tangshuang.net 获取更多精彩内容】服务端php解决jquery ajax跨【转载请注明来源】本文作者:唐霜,转载请注明出处。域请求restful api问题及实践》中,我简单介绍了如何通过服务端解决jq【版权所有】唐霜 www.tangshuang.net【本文首发于唐霜的博客】uery ajax的跨域请求问题,但是,著作权归作者所有,禁止商业用途转载。【版权所有,侵权必究】在这个过程中,我们会发现,在很多post【关注微信公众号:wwwtangshuangnet】【作者:唐霜】,put,delete等请求之前,会有一【版权所有,侵权必究】本文作者:唐霜,转载请注明出处。次options请求。本文主要是来讨论一著作权归作者所有,禁止商业用途转载。【未经授权禁止转载】下这是什么原因引起的。
未经授权,禁止复制转载。【本文受版权保护】本文作者:唐霜,转载请注明出处。【作者:唐霜】【转载请注明来源】根本原因就是,W3C规范这样要求了!在跨原创内容,盗版必究。【版权所有,侵权必究】域请求中,分为简单请求(get和部分po本文版权归作者所有,未经授权不得转载。【关注微信公众号:wwwtangshuangnet】st,post时content-type本文作者:唐霜,转载请注明出处。【未经授权禁止转载】属于application/x-www-【本文首发于唐霜的博客】【本文首发于唐霜的博客】form-urlencoded,mult本文版权归作者所有,未经授权不得转载。【本文受版权保护】ipart/form-data,text【本文受版权保护】【本文首发于唐霜的博客】/plain中的一种)和复杂请求。而复杂著作权归作者所有,禁止商业用途转载。【访问 www.tangshuang.net 获取更多精彩内容】请求发出之前,就会出现一次options本文版权归作者所有,未经授权不得转载。【版权所有】唐霜 www.tangshuang.net请求。
转载请注明出处:www.tangshuang.net本文版权归作者所有,未经授权不得转载。【版权所有】唐霜 www.tangshuang.net转载请注明出处:www.tangshuang.net【关注微信公众号:wwwtangshuangnet】什么是options请求呢?它是一种探测转载请注明出处:www.tangshuang.net【转载请注明来源】性的请求,通过这个方法,客户端可以在采取【版权所有】唐霜 www.tangshuang.net【版权所有】唐霜 www.tangshuang.net具体资源请求之前,决定对该资源采取何种必【版权所有,侵权必究】【作者:唐霜】要措施,或者了解服务器的性能。
【作者:唐霜】【版权所有,侵权必究】【未经授权禁止转载】【原创不易,请尊重版权】著作权归作者所有,禁止商业用途转载。在ajax中出现options请求,也是著作权归作者所有,禁止商业用途转载。本文版权归作者所有,未经授权不得转载。一种提前探测的情况,ajax跨域请求时,【原创不易,请尊重版权】【作者:唐霜】如果请求的是json,就属于复杂请求,因【转载请注明来源】【访问 www.tangshuang.net 获取更多精彩内容】此需要提前发出一次options请求,用著作权归作者所有,禁止商业用途转载。【原创不易,请尊重版权】以检查请求是否是可靠安全的,如果opti本文版权归作者所有,未经授权不得转载。【版权所有,侵权必究】ons获得的回应是拒绝性质的,比如404【原创不易,请尊重版权】本文版权归作者所有,未经授权不得转载。\403\500等http状态,就会停止【版权所有,侵权必究】转载请注明出处:www.tangshuang.netpost、put等请求的发出。
原创内容,盗版必究。著作权归作者所有,禁止商业用途转载。本文作者:唐霜,转载请注明出处。【未经授权禁止转载】本文作者:唐霜,转载请注明出处。虽然在下面的参考文献中有人提出可以取消o【版权所有】唐霜 www.tangshuang.net【原创内容,转载请注明出处】ptions请求,但是实测后发现是不行的【作者:唐霜】本文版权归作者所有,未经授权不得转载。,jquery封装之后,更不能轻易取消。【关注微信公众号:wwwtangshuangnet】【版权所有,侵权必究】因此,靠javascript客户端取消o本文作者:唐霜,转载请注明出处。【关注微信公众号:wwwtangshuangnet】ptions请求是不可能的,只能通过服务【本文受版权保护】原创内容,盗版必究。端对options请求做出正确的回应,这【原创内容,转载请注明出处】本文版权归作者所有,未经授权不得转载。样才能保证options请求之后,pos【关注微信公众号:wwwtangshuangnet】【未经授权禁止转载】t、put等请求可以被发出。但是,我们不未经授权,禁止复制转载。原创内容,盗版必究。能允许所有的options请求,而应该是未经授权,禁止复制转载。原创内容,盗版必究。有条件的,所以最好是通过一个特殊的机制,原创内容,盗版必究。【版权所有,侵权必究】去验证客户端发出的options请求数据【本文首发于唐霜的博客】本文版权归作者所有,未经授权不得转载。是否是符合服务端的条件的,如果不满足,返本文版权归作者所有,未经授权不得转载。著作权归作者所有,禁止商业用途转载。回403,则客户端会取消原有的post计本文作者:唐霜,转载请注明出处。【访问 www.tangshuang.net 获取更多精彩内容】划。
未经授权,禁止复制转载。本文版权归作者所有,未经授权不得转载。转载请注明出处:www.tangshuang.net著作权归作者所有,禁止商业用途转载。本文版权归作者所有,未经授权不得转载。参考文献:【原创内容,转载请注明出处】
本文作者:唐霜,转载请注明出处。转载请注明出处:www.tangshuang.net原创内容,盗版必究。- 探讨跨域请求资源的几种方式未经授权,禁止复制转载。 【版权所有】唐霜 www.tangshuang.net【访问 www.tangshuang.net 获取更多精彩内容】未经授权,禁止复制转载。【本文首发于唐霜的博客】原创内容,盗版必究。
- CORS 中的POST and OPTI未经授权,禁止复制转载。原创内容,盗版必究。ONS 请求 原创内容,盗版必究。【版权所有】唐霜 www.tangshuang.net【版权所有】唐霜 www.tangshuang.net著作权归作者所有,禁止商业用途转载。原创内容,盗版必究。
- POST请求失败,变成options请求 【版权所有,侵权必究】【版权所有,侵权必究】原创内容,盗版必究。
- $.ajax post方式变成OPTIO【未经授权禁止转载】原创内容,盗版必究。NS 跨域请求 著作权归作者所有,禁止商业用途转载。【未经授权禁止转载】【访问 www.tangshuang.net 获取更多精彩内容】【未经授权禁止转载】
- Access control allow转载请注明出处:www.tangshuang.net未经授权,禁止复制转载。 origin 简单请求和复杂请求 【未经授权禁止转载】未经授权,禁止复制转载。【关注微信公众号:wwwtangshuangnet】【关注微信公众号:wwwtangshuangnet】
- HTTP的请求方法OPTIONS 原创内容,盗版必究。 未经授权,禁止复制转载。【本文首发于唐霜的博客】未经授权,禁止复制转载。【原创不易,请尊重版权】
2016-03-14 22160



[…] 最后,在我们使用ajax进行跨域请求的时候,还可以通过在服务端进行一些配置,可以让ajax在请求对应域名时,可以被正常接受。请看《服务端php解决jquery ajax跨域请求restful api问题及实践》《jquery ajax 请求中多出现一次OPTIONS请求及其解决办法》这两篇文章,可以帮你解决服务端是php的应用程序的配置方法。 […]
[…] jquery ajax 请求中多出现一次OPTIONS请求及其解决办法 […]