分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 前端开发

fetch和XMLHttpRequest

发布时间:2023-09-06 02:09责任编辑:顾先生关键词:暂无标签

除了XMLHttpRequest对象来获取后台的数据之外,还可以使用一种更优的解决方案fetch

到现在为止,fetch的支持性还不是很好,但是在谷歌浏览器中已经支持了fetch。fetch挂在在BOM中,可以直接在谷歌浏览器中使用。

查看fetch的支持情况:fetch的支持情况

当然,如果不支持fetch也没有问题,可以使用第三方的ployfill来实现只会fetch:whatwg-fetch

下面我们来写第一个fetch获取后端数据的例子:

// 通过fetch获取百度的错误提示页面fetch(‘https://www.baidu.com/search/error.html‘) // 返回一个Promise对象 ?.then((res)=>{ ???return res.text() // res.text()是一个Promise对象 ?}) ?.then((res)=>{ ???console.log(res) 
// 通过fetch获取百度的错误提示页面fetch(‘https://www.baidu.com/rec?platform=wise&ms=1&rset=rcmd&word=123&qid=11327900426705455986&rq=123&from=844b&baiduid=A1D0B88941B30028C375C79CE5AC2E5E%3AFG%3D1&tn=&clientWidth=375&t=1506826017369&r=8255‘, { // 在URL中写上传递的参数 ???method: ‘GET‘, ???headers: new Headers({ ?????‘Accept‘: ‘application/json‘ // 通过头指定,获取的数据类型是JSON ???}) ?}) ?.then((res)=>{ ???return res.json() // 返回一个Promise,可以解析成JSON ?}) ?.then((res)=>{ ???console.log(res) // 获取JSON数据 ?})

强制带Cookie

默认情况下, fetch 不会从服务端发送或接收任何 cookies, 如果站点依赖于维护一个用户会话,则导致未经认证的请求(要发送 cookies,必须发送凭据头).

// 通过fetch获取百度的错误提示页面fetch(‘https://www.baidu.com/search/error.html‘, { ???method: ‘GET‘, ???credentials: ‘include‘ // 强制加入凭据头 ?}) ?.then((res)=>{ ???return res.text() ?}) ?.then((res)=>{ ???console.log(res) ?})

fetch和XMLHttpRequest

原文地址:https://www.cnblogs.com/shiyujian/p/9443220.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved