- 1、本文档共17页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
网络模块封装;常见的网络请求模块,以及优缺点对比。
JSONP的原理和封装
JSONP原理回顾
JSONP请求封装
axios的内容详解
认识axios网络模块
发送基本请求
axios创建实例
axios拦截器的使用
;Vue中发送网络请求有非常多的方式,那么,在开发中,如何选择呢?
;在前端开发中,我们一种常见的网络请求方式就是JSONP
使用JSONP最主要的原因往往是为了解决跨域访问的问题.
JSONP的原理是什么呢?
JSONP的核心在于通过script标签的src来帮助我们请求数据.
原因是我们的项目部署在服务器上时,是不能直接访问服务器上的资料的.
这个时候,我们利用script标签的src帮助我们去服务器请求到数据,将数据当做一个javascript的函数来执行,并且执行的过程中传入我们需要的json.
所以,封装jsonp的核心就在于我们监听window上的jsonp进行回调时的名称.
JSONP如何封装呢?
我们一起自己来封装一个处理JSONP的代码吧.
;JSONP封装;为什么选择axios?作者推荐和功能特点
功能特点:
在浏览器中发送XMLHttpRequests请求
在node.js中发送http请求
支持PromiseAPI
拦截请求和响应
转换请求和响应数据
等等
;支持多种请求方式:
axios(config)
axios.request(config)
axios.get(url[,config])
axios.delete(url[,config])
axios.head(url[,config])
axios.post(url[,data[,config]])
axios.put(url[,data[,config]])
axios.patch(url[,data[,config]])
如何发送请求呢?
我们看一下左边的案例
;发送get请求演示;有时候,我们可能需求同时发送两个请求
使用axios.all,可以放入多个请求的数组.
axios.all([])返回的结果是一个数组,使用axios.spread可将数组[res1,res2]展开为res1,res2;在上面的示例中,我们的BaseURL是固定的
事实上,在开发中可能很多参数都是固定的.
这个时候我们可以进行一些抽取,也可以利用axiox的全局配置;请求地址
url:/user,
请求类型
method:get,
请根路径
baseURL:/api,
请求前的数据处理
transformRequest:[function(data){}],
请求后的数据处理
transformResponse:[function(data){}],
自定义的请求头
headers:{x-Requested-With:XMLHttpRequest},
URL查询对象
params:{id:12},;为什么要创建axios的实例呢?
当我们从axios模块中导入对象时,使用的实例是默认的实例.
当给该实例设置一些默认配置时,这些配置就被固定下来了.
但是后续开发中,某些配置可能会不太一样.
比如某些请求需要使用特定的baseURL或者timeout或者content-Type等.
这个时候,我们就可以创建新的实例,并且传入属于该实例的配置信息.
;axios封装;axios提供了拦截器,用于我们在发送每次请求或者得到相应后,进行对应的处理。
如何使用拦截器呢?
;请求拦截可以做到的事情:
请求拦截中错误拦截较少,通常都是配置相关的拦截
可能的错误比如请求超时,可以将页面跳转到一个错误页面中。
;响应拦截中完成的事情:
响应的成功拦截中,主要是对数据进行过滤。
响应的失败拦截中,可以根据status判断报错的错误码,跳转到不同的错误提示页面。
;演示完毕!
您可能关注的文档
- 04-前端模块化(略).pptx
- 07-Vuex实现vue状态管理.pptx
- 06-vue-router的基本使用与进阶.pptx
- 05-Vue CLI的基本使用及目录详解.pptx
- 03-组件化开发与插槽.pptx
- 02-vue的基础语法与指令系统.pptx
- 01-邂逅Vuejs及简单体验.pptx
- 计量规程规范 JJF(烟草)4.1-2024烟草及烟草制品 连续流动法测定常规化学成分测量不确定度评定指南 第1部分:水溶性糖.pdf
- 计量规程规范 JJG(烟草)33-2024卷烟爆珠强度测试仪检定规程.pdf
- 《JJG(烟草)33-2024卷烟爆珠强度测试仪检定规程》.pdf
- JJF(烟草)4.2-2024烟草及烟草制品 连续流动法测定常规化学成分测量不确定度评定指南 第2部分:总植物碱.pdf
- JJG(烟草)33-2024卷烟爆珠强度测试仪检定规程.pdf
- JJF(烟草)4.5-2024烟草及烟草制品 连续流动法测定常规化学成分测量不确定度评定指南 第5部分:钾.pdf
- 计量规程规范 JJF(烟草)4.5-2024烟草及烟草制品 连续流动法测定常规化学成分测量不确定度评定指南 第5部分:钾.pdf
- JJF(烟草)4.4-2024烟草及烟草制品 连续流动法测定常规化学成分测量不确定度评定指南 第4部分:氯.pdf
- 《JJF(烟草)4.4-2024烟草及烟草制品 连续流动法测定常规化学成分测量不确定度评定指南 第4部分:氯》.pdf
- 计量规程规范 JJF(烟草)4.4-2024烟草及烟草制品 连续流动法测定常规化学成分测量不确定度评定指南 第4部分:氯.pdf
- 《JJF(烟草)4.1-2024烟草及烟草制品 连续流动法测定常规化学成分测量不确定度评定指南 第1部分:水溶性糖》.pdf
- 南京金牛湖两山产业投资开发有限公司招聘笔试题库2024.pdf
- 瑞金市乡村发展投资建设有限公司招聘笔试题库2024.pdf
最近下载
- 绘本阅读促进幼儿社会性发展的策略研究.docx VIP
- 闽江学院辅导员考试试题(2023).docx
- 风力发电企业安全设施配置标准_图文.pdf VIP
- 德尔福MT22.1发动机管理系统使用及维修技术手册-DELPHI.PDF
- 红色国家奖学金答辩PPT模板.pptx
- 四川电大建筑测量(8033)建筑测量形考一_0009(课程号:5108033)参考资料.doc
- 《城市管理学ppt合集 杨宏山》.pdf
- 《中国上市公司碳排放排行榜暨双碳领导力榜(2023)》-财经十一人.pdf
- 生物化学期末复习重点.docx
- 同济大学2020-2021学年第2学期《心理学导论》期末考试试卷(B卷)及标准答案.docx
文档评论(0)