目录

一、安装Axios

二、发送请求

(一)Get请求

(二)Post请求

1. 第一种方式

2. 第二种方式

三、拦截器

(一)请求前拦截器

(二)应答拦截器

四、封装


一、安装Axios

g 全局安装

npm i axios

在要用的模块导入axios

import axios from 'axios'

二、发送请求

(一)Get请求

// 请求头携带参数案例:?uid=1001
axios.get(
    'http://localhost:8080/user/api/v1/user/query', {
        params: {
            uid: '1001'
        }
    }).then(res => {
    console.log(res.data)
}).catch(err => {
    console.log("请求错误=" + err)
}).finally(() => {

})

(二)Post请求

1. 第一种方式

function funPost() {
    // 请求体携带参数
    axios.post(
        'http://localhost:8080/user/api/v1/user/query',
        'uid=1001'
    ).then(res => {
        console.log(res.data)
    }).catch(err => {
        console.log("请求错误=" + err)
    }).finally(() => {

    })
}

2. 第二种方式

后端需要使用@RequestBody User user注解

接收json转为对象

function funPost() {
    // 请求体携带参数
    axios({
        url: 'http://localhost:8080/user/api/v1/user/query',
        method: 'post',
        data: {
            'id': '1001'
        }
    }).then(res => {
        console.log(res.data)
    }).catch(err => {
        console.log("请求错误=" + err)
    }).finally(() => {

    })
}

三、拦截器

(一)请求前拦截器

// 请求前拦截器
axios.interceptors.request.use(function (config) {
    config.url = config.url + "?token=ABC"
    return config
}, function (err) {
    return Promise.reject(err)
})

(二)应答拦截器

五、Axios全局默认值

axios.defaults.baseURL = 'http://localhost:8000'
axios.defaults.timeout = 5000
axios.defaults.headers.common['Authorization'] = AUTH_TOKEN
axios.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded'

四、封装

路径:@/api/httpRequest.js        @是src目录

import axios from "axios";

// 设置默认值
axios.defaults.baseURL = 'http://localhost:8000/api'
axios.defaults.timeout = 7000

// get
function doGet(url, params) {
    return axios({
        url: url,
        method: 'get',
        params: params
    })
}

// post
function doPost(url, params) {
    return axios({
        url: url,
        method: 'post',
        params: params
    })
}

// 暴露方法
export {doGet, doPost}

原文地址:https://blog.csdn.net/m0_58961367/article/details/134580674

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任

如若转载,请注明出处:http://www.7code.cn/show_22056.html

如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱suwngjj01@126.com进行投诉反馈,一经查实,立即删除

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注