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

炫酷业务网站谷歌浏览器 安卓下载2023版官网

炫酷业务网站,谷歌浏览器 安卓下载2023版官网,青岛人社通app下载最新版,优酷视频接到网站怎么做token配置、中英文配置、对所有接口统一设置防抖、对所有post接口统一设置节流 废话少说直接上代码 request.js import axios from axios // 使用element-ui Message做消息提醒 import { ElMessage } from element-plus//这是为了防止刁民反复切换页面,切换页面…

token配置、中英文配置、对所有接口统一设置防抖、对所有post接口统一设置节流 

废话少说直接上代码

request.js 

import axios from 'axios'
// 使用element-ui Message做消息提醒
import { ElMessage } from 'element-plus'//这是为了防止刁民反复切换页面,切换页面时对还在请求中的接口进行中断
// const CancelToken = axios.CancelToken;
// import pinia from '../store'
// import { useNet } from '../store/net'
// const net = useNet(pinia)
import routes from '../router/index.js'//中英文,不使用注释掉,$t('xxx.xxx.xxx')改成你想要的提示
import { translate as $t } from "../language/index"//创建axios
const instance = axios.create({baseURL: process.env.BASE_API,timeout: 10000
})
//节流
let lastTime = new Date().getTime()
//防抖
const debounceTokenCancel = new Map()//请求前拦截
instance.interceptors.request.use(config => {const token = localStorage.getItem('token');config.headers = {//配置token'Content-Type': 'application/json','T-Authorization': token,//中英文标识,判断当前中英文'Accept-Language': localStorage.getItem("language") == null ? 'zh-CN' : localStorage.getItem("language") == 'zh' ? 'zh-CN' : 'en-US'}//切换页面强行中断请求// config.cancelToken = new CancelToken(c => {//     net.cancel = c// })//请求接口进行标识const tokenKey = `${config.method}-${config.url}`//存在可以防抖的情况,取消请求const cancel = debounceTokenCancel.get(tokenKey)if (cancel) {cancel()}return new Promise(resolve => {let timerif (config.method == 'get') {//放行get请求resolve(config)} else if (config.method == 'post') {//开始节流const nowTime = new Date().getTime()if (nowTime - lastTime < 1000) {ElMessage.error({showClose: true,message: $t('text.Common.l25'),type: 'error',})return Promise.reject(new Error('节流处理中,稍后再试'))} else {//开始防抖lastTime = nowTimetimer = setTimeout(() => {clearTimeout(timer)resolve(config)}, 10)//发生重复请求,进行取消debounceTokenCancel.set(tokenKey, () => {clearTimeout(timer)resolve(new Error('取消请求'))})}}})
}, error => {console.log(error)return Promise.reject(error)
})// let showError = false; // 新增一个变量来控制是否已经显示错误消息
// let timerError = null; // 新增一个计时器//响应后拦截
instance.interceptors.response.use(response => {if (response.data.code === 0) {return response.data.data} else {//跳转到登陆页面if (response.data.code == 402 || response.data.code == 401) {routes.push({ path: '/login' })}ElMessage.error({showClose: true,message: response.data.msg,type: 'error',})// if (!showError) { // 如果错误消息未显示//     ElMessage.error({//         showClose: true,//         message: response.data.msg,//         type: 'error',//     })//     showError = true; // 设置为已显示//     // 设置一个计时器,在一段时间后重置 showError//     timerError = setTimeout(() => {//         showError = false;//         clearTimeout(timerError);//     }, 1000); // 1000毫秒后重置// }}//return response
}, error => {//其它异常处理if (JSON.stringify(error).includes('500')) {ElMessage.error({showClose: true,message: $t('text.Common.l26'),type: 'error',})}return Promise.reject(error)
})export default instance

api.js:

import request from "./request.js";const baseUrl = '/api'//post
export function login(params) {return request({url: baseUrl + "/opsli-boot/system/login",method: "post",data: params});
}//get
export function findListByTypeCode(params) {return request({url: baseUrl + "/a123/b456",method: "get",});
}

使用: 

        
import { getKey } from '../../http/api'getKey().then(res => {//在request进行了拦截,如果请求没成功是不返回的,判断成功时一定要判断res !== undefinedif (res !== undefined) {console.log(res)}}).catch()

 

 

http://www.jinmujx.cn/news/116459.html

相关文章:

  • 热可可怎么做视频网站下载百度app最新版并安装
  • 建设用地预审系统官方网站广告推广怎么做最有效
  • 简单的手机网站模板下载软件开发公司网站
  • 优质校建设专题网站sem推广托管公司
  • 做nba直播网站好营销型网站建设需要多少钱
  • 想做个网站 怎么做深圳关键词排名优化系统
  • 网页生成视频seo排名怎样
  • 做网站优势搜索引擎
  • 网站头部怎样做有气势兴安盟新百度县seo快速排名
  • java电影网站开发视频市场调研问卷调查怎么做
  • 网站没有备案时电话营销外包公司
  • 怎么做简单的网站首页sem优化和seo的区别
  • 做温泉机的企业网站成都关键词优化报价
  • 蒙古文政府网站群建设资料免费b站推广
  • 国外设计类网站中国十大企业管理培训机构
  • 四字母net做网站怎么样百度域名收录提交入口
  • 杭州哪家做网站比较好陕西网站关键词自然排名优化
  • 怎么做电商网站 用户画像开发一个网站需要哪些技术
  • 网页传奇手游版东莞seo技术培训
  • 最新网站开发建设教材百度账号官网
  • 海口网站建设做网站广告联盟代理平台
  • html做的网站图片横着摆放新网域名注册查询
  • 网站建设达到什么水平百度提问登陆入口
  • 信用湘潭网站免费网站seo诊断
  • 网站建设制作包括哪些网站备案流程
  • wordpress 门户网站网络推广哪个平台最好
  • 星巴克网站开发票吗资源最多的磁力搜索引擎
  • 大发 wordpress裤子seo关键词
  • 寻找哈尔滨网站建设百度热搜榜今日头条排名
  • 鲜花网站建设解决方案刷关键词排名软件有用吗