当前位置: 首页 > news >正文

住房和城乡建设部的网站首页徐州网站建设xzqjwl

住房和城乡建设部的网站首页,徐州网站建设xzqjwl,360关键词排名推广,西安建网站公司axios中文网 一. 为什么会诞生Axios 最初浏览器页面向服务器请求数据时#xff0c;返回的是整个页面#xff0c;整个页面都会刷新ajax的出现#xff0c;它可以在页面无刷新的情况下请求数据原生的XMLHttpRequest#xff0c;jQuery封装的ajax#xff0c;以及axios都可以实…axios中文网 一. 为什么会诞生Axios 最初浏览器页面向服务器请求数据时返回的是整个页面整个页面都会刷新ajax的出现它可以在页面无刷新的情况下请求数据原生的XMLHttpRequestjQuery封装的ajax以及axios都可以实现异步的网络请求axios相比于原生的XMLHttpRequest对象简单易用相比于jQueryaxios包尺寸小且提供了易于扩展的接口是专注于网络请求的库axios本质上是XMLHttpRequest的封装 二. Axios是什么 axios是一个基于Promise的网络请求库可以用于浏览器和node.js简单来说就是可以发送get、post等请求vue、react等框架的出现促使axios轻量级库的出现。因为vue、react等不需要操作dom所以不需要引入jquery.js了 三. axios与ajax的区别 理论区别 axios是通过Promise实现对ajax的封装就像jQuery对ajax的封装一样。ajax实现了页面局部的刷新axios实现了对ajax的封装axios是ajaxajax不止axios即axios是ajax的衍生 逻辑区别 ajax 本身是一个针对MVC的编程axios符合现在前端MVVM的浪潮 axios的特点 从浏览器创建XMLHttpRequest从node.js创建http请求支持Promise API拦截请求和响应转换请求和响应数据取消请求自动转换JSON数据客户端支持防御XSRF 四. axios请求的五种方式getpostputpatchdelete 注使用axios记得先安装它的依赖并导入此处省略 get获取数据post提交数据表单提交文件上传put更新数据所有数据推送到后端patch更新数据只将更新的数据推送到后端delete删除数据 // params 是将与请求一起发送的url参数对应后台中的query // data 是作为请求主体被发送的数据对应后台中的body axios.request(config) axios.get(url[, config]) // 只支持 params 传参 axios.delete(url[, config]) // 只支持 params传参 axios.head(url[, config]) // 只支持 params传参 axios.post(url[, data[, config]]) // 同时支持 data 和 params axios.put(url[, data[, config]]) // 同时支持 data 和 params axios.patch(url[, data[, config]]) // 同时支持 data 和 params使用方法 1. get方法 scriptimport axios from axiosexport default {mounted () {axios.get(接口地址, {params: {}}).then((res) {})}} /script 2. post方法 scriptimport axios from axiosexport default {mounted () {// 1.【参数为application/json请求方式】axios.post(接口地址, {}).then((res) {})// 2.【参数为form-data请求方式的表单提交图片上传/文件上传】let data { id: 12 }let formData new formData()for (let key in data) {formData.append(key, data[key])}axios.post(接口地址, formData).then((res) {})}} /script 3. put方法 scriptimport axios from axiosexport default {mounted () {axios.put(接口地址, {}).then((res) {})}} /script 4. patch方法 scriptimport axios from axiosexport default {mounted () {axios.patch(接口地址, {}).then((res) {})}} /script 5. delete方法 scriptimport axios from axiosexport default {mounted () {// 写法一axios.delete(接口地址, { params: {} }).then((res) {})// 写法二axios.delete(接口地址, { data: {} }).then((res) {})}} /script 五. axios拦截器的介绍 1. axios拦截器的原理 网络请求 —— axios —— 请求拦截器 —— 服务器 —— 响应拦截器 —— 服务器 2. 请求拦截器主要处理token的统一注入问题 import axios from axios; const axiosRequest axios.create(); // 创建axios实例axiosRequest.interceptors.request.use(config {// 有token修改token,没有token跳转登录if (store.getters.getToken ! ) {// 让每个请求携带token-- [X-Token]为自定义key 请根据实际情况自行修改if(!config.headers[Authorization]){config.headers[Authorization] store.getters.getToken; // getToken();}} else {if (config.url.charAt(/login?) -1) {window.location /login;}} return config}, error {return Promise.reject(error) })3. 响应拦截器主要处理返回的数据异常和数据结构的问题 import axios from axios; const axiosRequest axios.create(); // 创建axios实例axiosRequest.interceptors.response.use(response {if (response response.data response.data.code 401) {store.dispatch(setToken, );if (messagetimeout) {clearTimeout(messagetimeout)messagetimeout null}messagetimeout setTimeout(function () {this.$message({type: error,message: 认证失效请重新登录!,duration: 1000,onClose: function () {}})setTimeout(() {let routeData router.resolve({path: /login,})location.href routeData.href;}, 500)}, 500)return Promise.reject(response.data)}if (response response.data response.data.code 20007) { this.$message({type: error,message: 此用户已在其他地方登陆! ,duration: 1000,onClose: function () {window.location login;}})return Promise.reject(response.data)}if (response response.data !response.data.success !isMobile) {if (typeof response.data object !(response.data instanceof Blob)) {this.$message({type: error,message: response.data.message})}} },async error {// error 有response对象 configif (error.response error.response.data error.response.data.code 10002) {// 后端告诉前端token超时了await store.dispatch(user/lgout) // 调用登出actionrouter.push(/login) // 跳到登录页}this.$message.error(error.message) // 提示错误return Promise.reject(error) // 传入一个错误的对象 就认为promise执行链 进入了catch }) 六. async、await async、await的用法 async getList () {let result await axios.post(/getList, {id: 1})return result } async、await是什么 1. async是用来声明一个方法是异步的 2. await可以认为是async await的简写是等待一个异步方法执行完成的 async、await的使用规则 async表示这是一个async函数await只能用在async函数的里面不能单独使用async返回的是一个Promise对象await是等待这个Promise返回结果后再执行await等待的也是一个Promise对象后面必须跟一个Promise对象但不必写then()直接就可以得到返回值
http://www.dnsts.com.cn/news/231337.html

相关文章:

  • 做网站看网页效果搭建网站的过程
  • 衡水学校网站建设顺德网站建设公司有哪些
  • 内蒙古住房建设厅网站网页制作 收集资料
  • dedecms网站开发wordpress 支付宝捐赠
  • 视频网站设计模板wordpress编辑器支持代码
  • 网站内页模板泰国房产网站大全
  • 网站注册协议模板网站建设 服务条款
  • 杭州企业网站seo做视频网站服务器多少钱
  • 做网站是怎么挣钱的余杭住房和城乡建设局网站
  • 遵义酷虎网站开发电子商务网站建设精品课程
  • 专业医院网站建设网站SEO做点提升流量万象
  • 网站包503错误专业建设规划及实施方案
  • 建设银行网站进不去夏门建设局网站
  • 做海淘网站赚钱吗中国建设银行官网站电话号码
  • 广告设计自学网教程重庆seo1
  • 魔兽世界 建设公会网站网站建设系统认证系统
  • 上海网站建设价格表重庆市建设工程施工安全网
  • c 网站开发数据库连接哈尔滨做网站哪里好
  • 有什么外贸网站网站建设询价报告
  • 哪里有网站推广优化360平台怎么做网站优化
  • 网站服务器端口号是什么免费网站外链推广
  • 奥派电子商务网站建设论文电商平台市场调研报告
  • 制作网站的网站企业网站搭建多少钱
  • 网站单页宁波产城生态建设集团网站
  • 深圳外贸网站建设服务哪家好网络推广营销方案100例
  • 专业的网站设计网络页面设计介绍
  • phpcms 网站源码天元建设集团有限公司企查查
  • 广州h5网站本科自考有哪些科目
  • 做动图素材网站html静态页面怎么放在网站上
  • 网站开发看书网站建设费要摊销