fetch是一个和axios一样的一个基于promise封装的一个http库。
但是他与axios不同,从我个人角度理解,他比axios封装的更为严谨。
在刚使用
fetch
去请求数据的时候:
fetch('url').then(res=>{ console.log(res); })
输出的并不是我们请求的数据,而是:
但是,从status来看,我们的确从服务端请求到了数据。
这就是他与其他http库的区别,他并不是直接输出请求内容。
所以,我们需要用
json()
方法去解析内容。
fetch('url').then(res=>{ console.log(res.json()); })
利用json方法,成功的返回了一个promise对象,其中包含一个数组,即我们请求的内容.
但是,这还不是我们需要的内容,我们需要的只是请求到的数组。
fetch('url').then(res=>{ res.json().then((data)=>{ console.log(data); }) })
这时候,就成功达到了我们的目的~~~