Promise和fetch封装API请求的区别

比如我需要封装这样一个获取用户ID的函数


 getUserIds().then((ids) => {console.log(ids)})


// promise

const getUserIds = () => {

   return new Promise(resolve){

   // 模拟异步请求

   setTimeout(() => { resolve([1,2,3]) })

}

}

// fetch

const getUserIds = () {

  return fetch(URL, CONFIG)

}

用promise或者fetch来封装接口函数有什么区别吗?


梵蒂冈之花
浏览 1176回答 3
3回答

一只斗牛犬

没什么区别,都是返回promise,一个是浏览器封装好的,一个是需要自己去实现的

精慕HU

楼上说的很多,没有区别。不过这个问题本身就有问题。Promise 和 fetch 没有关系,不能放到一起比较。fetch 是原始的 XMLHttpRequest 对象的替代品,它实现了 Promise 规范,返回 Promise 实例;而 Promise 是为解决异步回调问题而摸索出的一套方案。

慕桂英546537

Fetch是基于标准 Promise 实现的,支持 async/await同构也方便,使用 isomorphic-fetch
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript