【问题标题】:Difference between fetch, ajax, and xhrfetch、ajax 和 xhr 之间的区别
【发布时间】:2019-02-15 02:03:21
【问题描述】:

这3种调用方式有什么区别?我在我当前的项目中使用 fetch 并且看不出它们之间有任何真正的区别。为什么在 javascript XD 中需要有 30 种不同的方式来做事。

谢谢。

【问题讨论】:

标签: javascript ajax api xmlhttprequest fetch


【解决方案1】:

Ajax 是一个流行词,意思是“在不离开页面的情况下从 JavaScript 发出 HTTP 请求”。

XMLHttpRequestfetch 是由浏览器提供的 API,允许从 JavaScript 发出 HTTP 请求。


XMLHttpRequest 从 90 年代就已经存在,并且是事件驱动的,要求您绑定事件侦听器以检测数据何时到达。

fetch 是较新的并且是围绕 Promises 构建的,Promises 现在是在 JavaScript 中执行异步操作的首选方式。除了 Internet Explorer 之外,它已充分确立为 supported 的所有重要位置。但是,它确实缺少 `XMLHttpRequest 提供的某些功能(例如进度监控)。


简而言之,有两种(不是 30 种)专用的 Ajax 方法,其中一种是现代的。


有关如何使用它们的实用介绍,MDN 为您提供:


还有各种库围绕 fetchXMLHttpRequest 提供更方便的 API(例如,Node.js 和浏览器之间的一致 API 或与 Angular 等框架的集成)。

【讨论】:

    猜你喜欢
    • 2017-08-29
    • 1970-01-01
    • 2012-09-17
    • 2012-09-30
    • 2012-05-27
    • 1970-01-01
    • 1970-01-01
    • 2014-11-17
    • 1970-01-01
    相关资源
    最近更新 更多