vue怎么实现第三方请求

藏色散人
发布: 2023-01-29 14:41:40
原创
1588 人浏览过

vue实现第三方请求的方法:1、通过“import axios from 'axios';”导入axios;2、将axios放在原型链上;3、添加请求拦截器,代码如“axios.interceptors.request.use(config => {...}”。

vue怎么实现第三方请求

本教程操作环境:Windows10系统、vue3版、DELL G3电脑

vue怎么实现第三方请求?

在vue中请求第三方数据--axios

1 axios -> 基于Promise对象 -> async & await

2 create阶段 -> 返回Promise对象 -> 返回的数据可以直接解构【数据处理】

  • 要写入实例的数据(即页面渲染使用的数据),需要用配置参数data接收

3 import axios from 'axios';

4 多次导入、使用的axios -> 将axios放在原型链上

import axios from 'axios';
Vue.prototype.axios = axios;
登录后复制

5 请求方法的别名

  • axios.request(config)

  • axios.get(url[, config])

  • axios.delete(url[, config])

  • axios.head(url[, config])

  • axios.options(url[, config])

  • axios.post(url[, data[, config]])

  • axios.put(url[, data[, config]])

  • axios.patch(url[, data[, config]])

6 拦截器

// 添加请求拦截器
axios.interceptors.request.use(config => {
  // 在发送请求之前做些什么
  return config;
}, error => {
  // 对请求错误做些什么
  return Promise.reject(error);
});

// 添加响应拦截器
axios.interceptors.response.use(response => {
  // 对响应数据做点什么
  return response;
}, error => {
  // 对响应错误做点什么
  return Promise.reject(error);
});
登录后复制

6.1 请求拦截应用

axios.interceptors.request.use(config => {
  // 在发送请求之前做些什么
  let token = sessionStorage.getItem('userTk');
  if (token) {
    config.headers.Authorization = token
  }
  return config
}, error => {
  // 对请求错误做些什么
  return Promise.reject(error);
});
登录后复制

6.2 响应拦截应用

axios.interceptors.response.use(response => {
  if (response.data.code === '200') {
    Auth.setToken(sessionStorage.getItem('userId'))
  }
  return response;
},
error => {
  console.warn(error);
  console.warn(error.response);
  if ((error.response.status && error.response.status === 401) || error.response.statusCode === 401) {
    // 已超时
    Auth.removeToken(sessionStorage.getItem('userId'));
    sessionStorage.clear();
    router.replace('/login')
    return Promise.reject('身份已过期,请重新登录!');
  }
  if(error.response && error.response.status === 500)
  return Promise.reject('服务异常,请稍后重试!');
});
登录后复制

推荐学习:《vue视频教程

以上是vue怎么实现第三方请求的详细内容。更多信息请关注PHP中文网其他相关文章!

相关标签:
vue
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板