Fetch:下一代 Ajax 技术
2015-12-28 21:04
260 查看
http://www.cnblogs.com/snandy/p/5076512.html
Ajax,2005年诞生的技术,至今已持续了 10 年。它是一种在客户端创建一个异步请求的技术,本质上它不算创新,是一组技术的组合。它的核心对象是 XMLHttpRequest。简单回顾下历史
1996年,IE 中首先添加了 iframe 用来实现异步请求获取服务器内容
1998年,微软 Outlook 在客户端 script 中实现了 XMLHttp 对象
1999年,微软在 IE5 中添加了 XMLHTTP ActiveX 对象用来异步获取服务器内容,该对象直到 Edge 浏览器才废弃。其它浏览器陆续实现了类似的对象称为 XMLHttpReques。
2004年,Google Gmail 中大量使用 XMLHttpRequest
2005年,Google Map 中大量使用 XMLHttpRequest
2005年,Jesse James Garrett 发表了文章 "Ajax: A New Approach to Web Applications",Ajax
诞生
2006年,XMLHttpRequest 被 W3C 采纳,最后更新时间是 2014年1月
使用步骤大概如下
Fetch 目前还不是 W3C 规范,由 whatag 负责出品。与 Ajax 不同的是,它的 API 不是事件机制,而采用了目前流行的 Promise 方式处理。我们知道 Promise 是已经正式发布的 ES6 的内容之一。
以上是一个最简单的请求,只要传一个参数 url 过去,默认为 get 请求,获取纯文本,fetch 第二个参数可以进行很多配置,比如 POST 请求
arrayBuffer()
blob()
json()
text()
formData()
此外,Fetch 跨域请求时默认不会带 cookie,需要时得手动指定 credentials: 'include'
相关:
https://developer.mozilla.org/zh-CN/docs/Web/API/GlobalFetch/fetch
https://fetch.spec.whatwg.org
https://hacks.mozilla.org/2015/03/this-api-is-so-fetching
相关文章推荐
- 使用 AngularJS 和 Electron 构建桌面应用
- 轻松学习JavaScript二十七:DOM编程学习之事件模型
- jsoup
- Fedora23下安装flash
- js 自定义方法 实现停留几秒 sleep
- angularjs ui-grid如何动态设置行高
- SEO之html5缓存
- BZOJ1031: [JSOI2007]字符加密Cipher
- 获取HTML元素的三个方法
- 我的前端故事----高仿支付宝密码输入框
- <Web>HTML中设置欢迎页面自动跳转
- javascript中通过replace函数搜索和替换指定字符串
- VS2010中使用sprintf出现warning C4996: 'sprintf': This function or variable may be unsafe.
- Error opening zip file or JAR manifest missing : D:\play-1.2.5/framework/play-1.2.5.jar
- 前端框架
- JavaScript 之条件(三目)运算符
- perl与json
- JS触发事件大全
- DOM中的动态NodeList与静态NodeList
- jquery中之get和post的区别