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

手机网站开发技巧无锡百度推广代理商

手机网站开发技巧,无锡百度推广代理商,一家做运动鞋的网站好,长沙移动网站建设哪家好本文将基于 Axios 原理,安装及封装方面展开描述,话不多说,现在发车! 一、原理 Axios 中文文档:起步 | Axios中文文档 | Axios中文网 赛前科普: 下文将涉及到三个关键词:Axios,Ajax…

本文将基于 Axios 原理,安装及封装方面展开描述,话不多说,现在发车!

一、原理

Axios 中文文档:起步 | Axios中文文档 | Axios中文网

赛前科普:

下文将涉及到三个关键词:Axios,Ajax,XMLHttpRequest


XMLHttpRequest(XHR) 

  • 浏览器内置的一个 API,用于在客户端与服务器交换数据
  • 可以实现异步请求
  • 支持多种数据格式(如 JSON、文本等)

Ajax

  • 通过异步请求,在不重新加载整个页面的情况下,动态更新页面的部分内容
  • 支持多种数据格式(如 JSON、文本等)
  • AJAX 通过 XMLHttpRequest 技术来实现

Axios 是一个基于 Promise 的 网络请求库,用于在浏览器和 Node.js 环境中发送 HTTP 请求

  • 浏览器端中,较为传统的两种网络请求的 API 是 fetch 和 XMLHttpRequest,而 Axios 使用的是 XMLHttpRequest
  • Node.js 环境中,Axios使用 Node.js 原生的 http 或 https 模块

Axios 使用 Promise 来处理异步请求,使得它可以通过 .then().catch() 来处理请求成功或失败的回调,而不需要使用传统的回调函数。

二、安装

执行如下命令:

npm install axios

  或者 

yarn add axios

安装完成后即可进行封装

三、封装

首先创建一个 request 目录,创建 request.js 文件用于封装方法,创建一个使用 axios 实例的 admin.js 文件。

request.js 文件

在这个文件中创建 axios 实例,设置 baseURL,timeout 等。

接下来就请求拦截器和相应拦截器,根据实际业务需求:

是否需要在请求拦截器中携带登录令牌,在响应拦截器中根据返回的状态码进行错误处理或者数据接收。

(状态码的处理可以单独封装一个方法,不必将判断大篇幅写在响应拦截器中,下面有代码示例)

import axios from 'axios'// create an axios instance
const service = axios.create({// baseURL: process.env.VUE_APP_BASE_API,// withCredentials: true,timeout: 5000 // request timeout
})// Add a request interceptor
service.interceptors.request.use(config => {return config},error => {return Promise.reject(error)}
)// Add a response interceptor
service.interceptors.response.use(response => {const res = response.dataif (res.code !== 200) {console.error(res.message || 'Error')handleError(res.code) // TODO: Handle errorreturn Promise.reject(new Error(res.message || 'Error'))} else {return res}},error => {return Promise.reject(error)}
)export default service
handleError(code) => {// 利用 if,switch等对code进行条件判断进行对应处理switch (code) {case '500401':console.log('这是500401');break;case '500402':console.log('这是500402');break;case '500403':console.log('这是500403');break;default:console.log('default');}
}

 

import axios from 'axios'const service = axios.create(config)
service.interceptors.request.use(requestHandler, requestErrorHandler)
service.interceptors.response.use(responseHandler, responseErrorHandler)export default service

封装结构就是这样的,创建实例——请求、响应拦截器——暴露方法

三、使用

admin.js 文件

在这个文件中使用封装后的方法:

import request from '@/utils/request'export function fetchList(query) {return request({url: 'your/request/url',method: 'get',params: query})
}export function finishForm(formData) {return request({url: 'your/request/url11',method: 'post',data: formData})
}
http://www.dtcms.com/wzjs/464168.html

相关文章:

  • 在线客服系统免费seo咨询服务价格
  • 建房设计图软件app成都seo优化公司
  • 基督教网站做父母怎样教养孩子旅游最新资讯
  • 网站关键词做多了是不是影响权重营销技巧第三季
  • 网站建设 java沈阳关键词推广
  • 建官方网站的公司汕头seo按天付费
  • 如何网站做百度推广网站服务器ip地址查询
  • 溧阳做网站的哪家好竞价开户推广
  • 怡美工业设计公司seo推广任务小结
  • 网站开发框架有哪些挖掘关键词的工具
  • 中国自适应网站建设成都网络推广优化
  • 电子商务网站建设资讯搜索引擎优化seo
  • 为网站添加isapi扩展医院营销策略的具体方法
  • 食品网站建设策划书百度云盘网页登录入口
  • 地方旅游网站模板极速一区二区三区精品
  • jsp网站开发 心得站长域名查询
  • 福州做网站的公司电话全国各城市疫情高峰感染高峰进度
  • 网站做关键词排名有必要吗网站seo分析报告案例
  • 营销号煽动民族情绪免费关键词优化排名软件
  • 惠州做网站开发十大搜索引擎神器
  • 怎么样做推广网站广东疫情中高风险地区最新名单
  • 金华网站制作系统沈阳seo收费
  • 网站建设与维护方式什么公司适合做seo优化
  • 网站logo如何修改海东地区谷歌seo网络优化
  • 网站建设公司业务提成多少百度通用网址
  • 容桂网站开发seo咨询茂名
  • 艺帆网络工作室网站源码济南网站建设
  • b站推广是什么意思山东免费网络推广工具
  • 岳阳政府网站建设公司做一个公司网站要多少钱
  • 提高网站流量厦门关键词排名推广