web前端全系列 教程
1839个小节阅读:2244.1k
目录
鸿蒙应用开发
C语言快速入门
JAVA全系列 教程
面向对象的程序设计语言
Python全系列 教程
Python3.x版本,未来主流的版本
人工智能 教程
顺势而为,AI创新未来
大厂算法 教程
算法,程序员自我提升必经之路
C++ 教程
一门通用计算机编程语言
微服务 教程
目前业界流行的框架组合
web前端全系列 教程
通向WEB技术世界的钥匙
大数据全系列 教程
站在云端操控万千数据
AIGC全能工具班
A A
White Night
fetch()
是 XMLHttpRequest 的升级版,用于在 JavaScript 脚本里面发出 HTTP 请求
浏览器原生提供这个对象
fetch()
的功能与 XMLHttpRequest 基本相同,但有三个主要的差异
fetch()
使用 Promise,不使用回调函数,因此大大简化了写法,写起来更简洁fetch()
采用模块化设计,API 分散在多个对象上(Response 对象、Request 对象、Headers 对象),更合理一些;相比之下,XMLHttpRequest 的 API 设计并不是很好,输入、输出、状态都在同一个接口管理,容易写出非常混乱的代码fetch()
通过数据流(Stream 对象)处理数据,可以分块读取,有利于提高网站性能表现,减少内存占用,对于请求大文件或者网速慢的场景相当有用。XMLHTTPRequest 对象不支持数据流,所有的数据必须放在缓存里,不支持分块读取,必须等待全部拿到后,再一次性吐出来fetch()
接受一个 URL 字符串作为参数,默认向该网址发出 GET 请求,返回一个 Promise 对象
xxxxxxxxxx
fetch(url)
.then(...)
.catch(...)
完整网络请求
xxxxxxxxxx
fetch('http://iwenwiki.com/api/blueberrypai/getChengpinDetails.php')
.then(response => response.json())
.then(json => console.log(json))
.catch(err => console.log('Request Failed', err));
xxxxxxxxxx
fetch("http://iwenwiki.com/api/blueberrypai/login.php", {
method: "POST",
headers: {
"Content-type": "application/x-www-form-urlencoded; charset=UTF-8",
},
body: "user_id=iwen@qq.com&password=iwen123&verification_code=crfvw"
}).then(res => {
return res.json()
}).then(data => {
console.log(data);
})
实时效果反馈
1. 下列代码,划横线处应该填写的代码是:
xxxxxxxxxx
fetch("http://iwenwiki.com/api/blueberrypai/login.php", {
___: "POST",
headers: {
"Content-type": "application/x-www-form-urlencoded; charset=UTF-8",
},
body: "user_id=iwen@qq.com&password=iwen123&verification_code=crfvw"
}).then(res => {
return res.json()
}).then(data => {
console.log(data);
})
A type
B method
C post
D get
答案
1=>B