【JavaScript】Fetch使用说明

fetch 方法是一种用于发送和接收网络请求的新 API,返回一个 promise
可替代传统的XMLHttpRequest 对象,具有更简单、更灵活和更强大的功能。

兼容性

fetch接口兼容性

语法

Promise<Response> fetch(input[, init]);

返回值

一个 Promise,resolve 时回传 Response 对象。

  • 例外
类型描述
AbortError请求被AbortController.abort()终止。
TypeErrorFirefox 43 (en-US)开始,如果fetch()接收到含有用户名和密码的 URL(例如http://user:password@example.com),它将会抛出一个TypeError

参数

参数名是否必填说明
input一个 USVString 字符串,包含要获取资源的 URL(一些浏览器会接受 blob: 和 data: 作为 schemes).
一个 Request 对象。
init一个配置项对象,包括所有对请求的设置。可选的参数参考下表
  • init参数表
参数名说明
method请求使用的方法,如 GETPOST
headers请求的头信息,形式为 Headers 的对象或包含 ByteString 值的对象字面量。
body请求的 body 信息:可能是一个BlobBufferSourceFormDataURLSearchParams或者USVString对象。注意 GET 或 HEAD 方法的请求不能包含 body 信息。
mode请求的模式,如 corsno-cors 或者 same-origin
credentials请求的 credentials,如 omitsame-origin 或者 include。为了在当前域名内自动发送 cookie,必须提供这个选项,从 Chrome 50 开始,这个属性也可以接受 FederatedCredential (en-US) 实例或是一个 PasswordCredential (en-US) 实例。
cache请求的 cache 模式:defaultno-storereloadno-cacheforce-cache 或者 only-if-cached
redirect可用的 redirect 模式:follow (自动重定向), error (如果产生重定向将自动终止并且抛出一个错误),或者 manual (手动处理重定向)。在 Chrome 中默认使用 follow(Chrome 47 之前的默认值是 manual)。
referrer一个 USVString 可以是 no-referrerclient 或一个 URL。默认是 client
referrerPolicy指定了 HTTP 头部 referer 字段的值。可能为以下值之一:no-referrerno-referrer-when-downgradeoriginorigin-when-cross-originunsafe-url
integrity包括请求的 subresource integrity 值(例如: sha256-BpfBw7ivV8q2jLiT13fxDYAe2tJllusRSZ273h2nFSE=)。

示例

var myHeaders = new Headers();
myHeaders.append("User-Agent","Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/99.0.4844.74 Safari/537.36");
fetch('https://www.baidu.com',{
    Headers:myHeaders,
 
}).then(data=>{
    console.log(data.text())
},reason=>{
    console.log(reason);
})

基于fetch接口获取百度页面HTML

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

陀螺蚁

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值