vue中axios得封装及使用

Posted 孟~先~生

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了vue中axios得封装及使用相关的知识,希望对你有一定的参考价值。

现在目录中得src文件中自定义一个文件在里面建立一个request.js文件

这个里面写得请求拦截和响应拦截

代码如下:::

/* eslint-disable prefer-promise-reject-errors */
// eslint-disable-next-line no-unused-vars
import axios from ‘axios‘
// 创建一个axios实例
const service = axios.create({
baseURL: ‘https://api.it120.cc/wenjie‘,
timeout: 2500
})
// 请求拦截
service.interceptors.request.use(config => {
console.log(‘请求被拦截‘)
return config
}, _error => {
return Promise.reject(‘请求出错‘)
})
// 响应拦截
service.interceptors.response.use(res => {
console.log(‘响应拦截‘)
return res
}, _error => {
return Promise.reject(‘出错了‘)
})
export default service

然后在main.js中引入在绑定在vue得实例上,

import http from ‘./http/rewuest‘

Vue.config.productionTip = false

// 挂载到原型上

Vue.prototype.$http = http

 

然后就能在文件中使用axios请求来得数据了

代码如下:::

this.$http.post(‘/shop/goods/list‘).then(res => { console.log(res) })

还可以将接口进行封装。

在建立一个api文件,每次将接口写在api里面进行调用就可以了

import request from ‘./rewuest‘ export function cluss () { return request({ url: ‘/shop/goods/list‘, method: ‘post‘ }) }

然后在文件直接引用就可以了

import { cluss } from ‘../http/api‘ cluss().then(res => { console.log(res) })

 

以上是关于vue中axios得封装及使用的主要内容,如果未能解决你的问题,请参考以下文章

vue中axios 配置请求拦截功能 及请求方式如何封装

vue中axios的统一封装及调用

axios在vue中的简单封装及应用

vue axios封装及调用 (可复用)

vue 封装数据请求

Vue: axios 请求封装及设置默认域名前缀 (for Vue 2.0)