axios : 两位爸爸好,我是为了方便程序猿的使用io操作,对两位爸爸做的一些封装。我很牛逼的,我还支持node进行io呢。 自动转json 自动支持抵御XSRF .....
ajax : 又多了一个争家产的。 去吧 我的儿。你那些兄弟姐们都在沙滩玩呢。
ajax : fetch啊,看来我时间不多。你身上的确有很多优势。可以很好的实现分离原则。 也原生支持目前流行的异步流(promise)模型。 但是进行io操作不是一件简单的事,要做的很多。你要任重道远。
fetch : 哥哥 看你说的。 我虽然诞生很久了,但是很多平台都不实现,还是需要哥哥做一些兼容的。并且我在进行复杂的io操作也是挺头疼的。
这不 前几天有人来酒吧差点打我一顿。说人家服务器返回500. 我也当成正常请求进到人家的then方法里了。
ajax: 呼。。 我听说了。 我当时带着儿子们过去,太晚了。你已经被送到医院了。
fetch: 恩 听说了 谢谢哥哥。
ajax: 那屌丝咋下手那么重。
fetch: 妈蛋 因为他,旁边一喝醉的java信徒说 "就是就是 fetch这小子竟然默认支持 application/json 害的我情人节陪前端加班好久。" 说着说着 就拿酒瓶打我,让我还他女朋友。
这他娘的一起哄。 旁边另一个默默抽烟的php哥们也跟着起哄。 "我就说两句。 1. 我是最好的语言! 2. fetch 默认不传给我cookie。 艹“ 这下炸膛了。 都开始过来打我!!
更可恶的是一个前端也参与打我,我很无辜的说。 "你他妈忘恩负义,老子从回调地狱解救你,你他妈打我。" 这哥们边打边说 ”老板让我监控io进度,你TM说 让我怎么做?我就说了一句 fetch不行。 就他妈把我开除了。。。“。 我刚想说什么, 又她妈一个傻逼蹦过来直接一脚。 ”不说这个,我还差点忘了,老板让我做一个abort功能。 你说这他妈让我咋弄。。。“
ajax: 好了好了 作为新人,难免会有些误会。 消消气。来口牛儿。
fetch: 你知道吗? 哥哥 最她妈让我生气的是。旁边最近暴发户的nodejs哥哥。一句话不说。 也不帮我。都是javascript。 就不怕我告咱爸爸Brendan Eich。 最后旁边几个前端慢慢扶起来我。在我路过他身边的时候,听到他跟pyhon兄弟聊天说 ”他一个浏览器端的家伙,我凭什么帮他。"
ajax: 妈的 真不是个好runtime。 走 找爸爸告他去。
fetch: 哥哥 哥哥 你说要不跟咱儿子 axios 说说。让他在node环境产生几个bug。玩死他们??
ajax : 诶 懂事。。。。。
一步一步的说:
- WHATWG(Web Hypertext Application Technology Working Group),是 Apple, Google, Mozilla, Microsoft 几个大厂为了友好撕逼,成立了这么个“网页超文本应用技术工作小组”,专门制定“标准”的;
2. XHR(XMLHttpRequest),是规范,是标准,The XMLHttpRequest Standard defines the networking API exposed to scripts on the web;
3. Fetch,是规范,是标准,The Fetch Standard defines the networking model for resource retrieval on the web;丢掉历史包袱,更好,更强;
4. AJAX(Asynchronous JavaScript and XML),是网页设计技术概念,各种编程语言都有许多框架、库提供 AJAX 工具;
5. Axios, 是基于 Promise 的、用于浏览器和 node.js 的 HTTP 客户端;
说一下 JavaScript 语言中的 AJAX 技术,早期规范标准羸弱、落后,各浏览器厂商提供接口不一致,又因标准规范比较底层,命令式的操作比较繁琐,就有了 jQuery 这类抽象的、高层次的、函数式的操作;