关于fetch网络请求

fetch也是内置的一种发送网络请求的方法,它和xhr的性质一样式window自带的。

优势在于:可以不使用第三方的请求库就可以进行网络请求。

fetch('/api/search/user2?q=${keyword}').then(res=>{
	console.log("联系服务器成功了")
    //这里的 res.json()返回的是一个promise对象
    return res.json()
},
 //error=>{
	//console.log("联系服务器失败了",error)
    //返回一个空的promise,这时候promise的状态一直为pendding,所以不会继续往下进行
    //return new Promise(()=>{})
//}
).then(
    res=>{console.log("获取数据成功",res)},
   // error=>{console.log("获取数据失败",error)}, 
).catch(
    //统一处理问题
	(error)=>{
        console.log("请求出错",error);
    }
)
//这里的成功和失败,并不是取决于返回数据的问题,而是看是否成功的连上了服务器,连上之后,如果服务器发现所访问的内容是错误的,这时候会触发error回调函数。

上面是用promise方式进行的网络请求处理,接下来使用await的方式进行:

try{
    const response=await fetch("/api/search/users?q=${keyWord}")
	const data=await response.json()
	console.log(data)
}catch(error){
    console.log("请求出错",error)
}

fetch的兼容性不是很好。很多老版本的浏览器可能不支持。所以一般情况下并不使用该方法进行网络请求。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值