IT技术博客大学习 共学习 共进步
全部 移动开发 后端 数据库 AI 算法 安全 DevOps 前端 设计 开发者

jQuery.ajax处理302重定向

PHPor 的Blog 2014-09-22 22:01:18 累计浏览 4,719 次
本机暂存

问题

   为什么jQuery.ajax() 没有默认支持302重定向?

解答

   jQuery.ajax 是通过xmlHttpRequest来实现的,而这个东西存在跨域问题,如果302跳转到的地址还是当前域,则服务器端几乎没有302重定向的必要;如果302跳转到的地址不是当前所在的域,则必然存在跨域问题。可能就是这个原因吧。

   但是:

   出于跨域资源共享的需要,很多浏览器开始支持cors,如果浏览器支持了cors(假设server端也做了相应的配置),则,jQuery.ajax似乎应该支持302才是,如果自己实现,请注意,如果需要上行cookie(一般是需要的),需要设置  xhr.withCredentials=true

如何实现302

   对于jQuery.ajax来讲,302是一个错误,可以通过实现 ajaxComplete 事件来完成,具体参考: http://api.jquery.com

   参考文章:

   http://stackoverflow.com/questions/199099/how-to-manage-a-redirect-request-after-a-jquery-ajax-call

   http://stackoverflow.com/questions/6955308/in-an-ajax-call-302-is-not-followed

   http://www.cnblogs.com/Darren_code/p/cors.html

   http://blog.csdn.net/hfahe/article/details/7730944

同分类推荐文章

  1. translateZ() (2026-06-25 21:18:56)
  2. translateY() (2026-06-25 21:17:56)
  3. translateX() (2026-06-25 21:16:01)

查看更多 前端 文章 →

建议继续学习

  1. JQuery实现Excel表格呈现 (累计阅读 48,349)
  2. 分享一个JQUERY颜色选择插件 (累计阅读 14,223)
  3. 使用python/casperjs编写终极爬虫-客户端App的抓取 (累计阅读 12,961)
  4. YSLOW法则中,为什么yahoo推荐用GET代替POST? (累计阅读 11,839)
  5. JSONP与POST方式请求 (累计阅读 11,294)
  6. jQuery插件---轻量级的弹出窗口wBox. (累计阅读 10,772)
  7. 10个强大的Ajax jQuery文件上传程序 (累计阅读 8,854)
  8. jQuery性能优化指南 (累计阅读 8,819)
  9. jQuery的data()方法 (累计阅读 8,651)
  10. jQuery Color Animations颜色动画插件 (累计阅读 8,504)