之前做数据交互的时候,请求数据一直使用ajax,看到网上有使用Fetch,所以也想拿来尝尝鲜
本次介绍只涉及fetch相关,传统的ajax基本上不涉及
当然你也要考虑兼容。浏览器支持情况。
一会这个只扯一下,我所遇到的情况:
由于fetch的坑:
服务器返回 400,500 错误码时并不会 reject,只有网络错误这些导致请求不能完成时,fetch 才会被 reject。
那么,我们怎么处理http的错误代码呢?
接下来我们改造一下fetch的请求步骤
fetch('some-url') .then(response => { if (response.ok) { return response.json() } else { return Promise.reject({ status: response.status, statusText: response.statusText }) } }) .catch(error => { if (error.status === 404) { // do something about 404 } })