vue使用request.js封装axios

在vue项目中创建util 工具包,并在util中创建request.js文件

import axios from 'axios';

const request = axios.create({
    baseURL: 'http://localhost:9090',
    timeout: 5000
})

//request 拦截器
//可以自请求发送前对请求做一些处理
//比如统一加token,对请求参数做处理
request.interceptors.request.use(config => {
    config.headers['Content-Type'] = 'application/json;charset=UTF-8'; // 设置请求头
    // do something before request is sent
    return config;
}, error => {
    // do something with request error
    return Promise.reject(error);
});

//response 拦截器
//可以在接口响应后统一处理结果
request.interceptors.response.use(
    response => {
        const res = response.data;
        //如果返回的是文件
        if (response.config.responseType === 'blob') {
            return res;
        }
        //兼容服务端返回的字符串数据
        if (typeof res === 'string') {
            return JSON.parse(res);
        }
        // do something with response data
        return res;
    },
    error => {
        // do something with response error
        console.log('err' + error); // for debug
        return Promise.reject(error);
    }
);

export default request;

添加request.js后,新建api文件夹,新建api.js

import request from "@/util/request"

export const  xxx = {

        addTestById(opt){

                return request({

                        url: '/xxx',

                        method: 'post',

                        data: opt

                })

        }

}

export default xxx;

注意:get、delete 方式时data变为params而不是opt

之后就可以在vue文件的methods方法中调用api并执行里面的方法,具体格式为

xxxapi.addTestById("加入前端传输的值").then(res => {

        //调用接口后的一些操作 例如执行查询操作等

})

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Vue.js使用axios进行HTTP请求可以通过以下步骤实现: 1. 首先,在你的Vue项目中安装axios。你可以使用npm或者yarn命令来安装axios依赖。例如,运行以下命令来安装axios: ``` npm install axios ``` 2. 在你的Vue项目的入口文件(通常是`main.js`)中引入axios。你可以使用以下代码来引入axios: ```javascript import axios from 'axios' ``` 3. 接下来,你需要创建一个自定义的axios实例。在你的项目中的request文件(例如,`request.js`)中导出一个axios实例。根据你提供的引用内容,可以使用以下代码创建一个axios实例: ```javascript import axios from 'axios' // 创建axios实例 const instance = axios.create({ baseURL: '/api', // 请求遇到 "/api" 就会自动替换为vue.config.js里target里的服务 timeout: 5000 // 请求超时时间 }) export default instance ``` 4. 现在你可以在你的Vue组件中使用封装好的axios实例进行HTTP请求。例如,你可以在你的Vue组件的方法中使用axios实例来发送POST请求: ```javascript import axios from './request' export default { methods: { test() { axios.post('/ceshi') .then(response => { // 处理请求成功的结果 console.log(response.data) }) .catch(error => { // 处理请求失败的结果 console.log(error) }) } } } ``` 5. 另外,你也可以在axios的配置中设置一些全局的默认值。你可以参考axios官网的文档来了解更多关于axios的配置选项。 总结一下,封装axios的步骤: 1. 安装axios依赖; 2. 在入口文件中引入axios; 3. 创建一个自定义的axios实例,并导出该实例; 4. 在Vue组件中使用axios实例进行HTTP请求。 需要注意的是,每次修改vue.config.js文件后,你需要重新运行`npm run serve`命令。 希望以上信息能帮助到你,如果还有其他问题,请随时提问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值