fetch 如何请求数据
fetch 如何请求数据
在 传统Ajax 时代,进行 API 等网络请求都是通过XMLHttpRequest或者封装后的框架进行网络请求,然而配置和调用方式非常混乱,对于刚入门的新手并不友好
二 与Ajax对比
使用Ajax请求一个 JSON 数据一般是这样:
同样我们使用fetch请求JSON数据:
从两者对比来看,fetch代码精简许多,业务逻辑更清晰明了,使得代码易于维护,可读性更高。
总而言之,Fetch 优点主要有:
1. 语法简洁,更加语义化,业务逻辑更清晰
2. 基于标准 Promise 实现,支持 async/await
3. 同构方便,使用isomorphic-fetch
三 Promise简介
由于 Fetch API 是基于 Promise 设计,接下来我们简单介绍下Promise工作流程,方便大家更好理解Fetch。
fetch方法返回一个Promise对象, 根据 Promise Api 的特性, fetch可以方便地使用then方法将各个处理逻辑串起来, 使用 Promise.resolve() 或 Promise.reject() 方法将分别返会肯定结果的Promise或否定结果的Promise, 从而调用下一个then 或者 catch。一旦then中的语句出现错误, 也将跳到catch中。
四 请求常见数据格式
接下来将介绍如何使用fetch请求本地文本数据,请求本地JSON数据以及请求网络接口。其实操作相比与Ajax,简单很多!
1.fetch请求本地文本数据
本地有一个test.txt文档,通过以下代码就可以获取其中的数据,并且显示在页面上。
2.fetch请求本地JSON数据
本地有个posts.json数据,与请求本地文本不同的是,得到数据后还要用forEach遍历,最后呈现在页面上。
3.fetch请求网络接口
获取 https://api.github.com/users
中的数据,做法与获取本地JSON的方法类似,得到数据后,同样要经过处理
知识点来源:https://segmentfault.com/a/1190000017453672
最新文章
- 《Ansible权威指南》笔记(3)——Ad-Hoc命令集,常用模块
- httpie工具介绍
- C++ Scripting
- Java初学(二)
- C11 memory_order
- golang(5):编写WebSocket服务,client和html5调用
- C-整数划分
- 什么是Jsp
- Java生成全局唯一ID代码演示
- javascript高级排序算法之快速排序(快排)
- Mysql update指定区间的数据
- JavaScript进度条(datalist/repeater等多个进度条)
- keras中TimeDistributed的用法
- Java中Super和final关键字以及异常类
- Twitter的雪花算法(snowflake)自增ID
- Linux下JDK+Eclipse安装
- Nlog.Config:日志方法步骤
- allegro对齐操作
- MVC登陆认证简单设置
- windows下在idea用maven导入spark2.3.1源码并编译并运行示例
热门文章
- [LeetCode] 75. 颜色分类(荷兰国旗)
- ❝ Windows系统的FTP上传下载脚本 ❞
- Hadoop集群(第12期)_HBase简介及安装
- failed to sync branch You might need to open a shell and debug the state of this repo.
- 继承的综合运用《Point类派生出Circle类而且进行各种操作》
- UVA 10593 Kites DP
- 个人作业—Alpha项目测试
- Linux中文件上传使用rz
- SQLserver中用convert函数转换日期格式(2)
- Oracle数据库基础(二)