fetch 如何请求数据

叁歲伎倆 2022-04-02 09:00 390阅读 0赞

fetch 如何请求数据

fetch 如何请求数据

在 传统Ajax 时代,进行 API 等网络请求都是通过XMLHttpRequest或者封装后的框架进行网络请求,然而配置和调用方式非常混乱,对于刚入门的新手并不友好

20181226093506739

二 与Ajax对比

使用Ajax请求一个 JSON 数据一般是这样:

20181226093506783

同样我们使用fetch请求JSON数据:

20181226093506803

从两者对比来看,fetch代码精简许多,业务逻辑更清晰明了,使得代码易于维护,可读性更高。
总而言之,Fetch 优点主要有:

1. 语法简洁,更加语义化,业务逻辑更清晰

2. 基于标准 Promise 实现,支持 async/await

3. 同构方便,使用isomorphic-fetch

三 Promise简介

由于 Fetch API 是基于 Promise 设计,接下来我们简单介绍下Promise工作流程,方便大家更好理解Fetch。

20181226093506819

fetch方法返回一个Promise对象, 根据 Promise Api 的特性, fetch可以方便地使用then方法将各个处理逻辑串起来, 使用 Promise.resolve() 或 Promise.reject() 方法将分别返会肯定结果的Promise或否定结果的Promise, 从而调用下一个then 或者 catch。一旦then中的语句出现错误, 也将跳到catch中。

四 请求常见数据格式

接下来将介绍如何使用fetch请求本地文本数据,请求本地JSON数据以及请求网络接口。其实操作相比与Ajax,简单很多!

20181226093506836

1.fetch请求本地文本数据

本地有一个test.txt文档,通过以下代码就可以获取其中的数据,并且显示在页面上。

20181226093506852

2.fetch请求本地JSON数据

本地有个posts.json数据,与请求本地文本不同的是,得到数据后还要用forEach遍历,最后呈现在页面上。

20181226093506866

3.fetch请求网络接口

获取 https://api.github.com/users中的数据,做法与获取本地JSON的方法类似,得到数据后,同样要经过处理

20181226093506883

转载:https://segmentfault.com/a/1190000017453672

发表评论

表情:
评论列表 (有 0 条评论,390人围观)

还没有评论,来说两句吧...

相关阅读

    相关 如何使 fetch() 请求超时

    在开发使用网络的应用程序时,要记住的第一条规则是不要依赖网络。 网络不可靠,因为 HTTP 请求或响应可能由于多种原因而失败: 用户离线 DNS 查询失败

    相关 fetch请求详解

    最新更新时间:2019年06月04日16:18:30 [`《猛戳-查看我的博客地图-总有你意想不到的惊喜》`][-_-] > 本文内容:fetch相关 概述