欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

vue3中封裝axios請求最新實現(xiàn)步驟

 更新時間:2024年04月27日 14:25:14   作者:爾嶸  
這篇文章主要給大家介紹了關于vue3中封裝axios請求的最新實現(xiàn)步驟,在Vue 3中可以通過封裝axios來實現(xiàn)接口的統(tǒng)一管理和調用,文中通過代碼介紹的非常詳細,需要的朋友可以參考下

在 Vue3 中,可以使用 axios 庫進行網(wǎng)絡請求,并將其封裝到一個自定義的函數(shù)中以便全局使用。具體實現(xiàn)步驟如下:

1.安裝 Axios:可以通過 npm 或 yarn 安裝 axios 庫。

npm install axios
# 或者
yarn add axios

2.創(chuàng)建一個 axios 實例并設置默認配置項和攔截器,該文件取名叫request.js

import axios from 'axios'
const service = axios.create({
  baseURL: process.env.VUE_APP_BASE_API,
  timeout: 5000
})

// request 攔截器
service.interceptors.request.use(
  config => {
    // 在這里可以設置請求頭、請求參數(shù)等return config
  },
  error => {
    console.log(error)
    return Promise.reject(error)
  }
)

// response 攔截器
service.interceptors.response.use(
  response => {
    // 在這里處理返回數(shù)據(jù)const { data } = response
    if (data.code !== 200) {
      console.error('Error:', data.message)
      return Promise.reject(newError(data.message || 'Error'))
    } else {
      return data
    }
  },
  error => {
    console.log(error)
    return Promise.reject(error)
  }
)

// 封裝具體的請求方法: 四種請求類型不和下面的3和4標題內容放在一起
export const get = (url, params) => {
  return service .get(url, { params });
};

export const post = (url, data) => {
  return service .post(url, data);
};

export const put = (url, data) => {
  return service .put(url, data);
};

export const delete= (url, data) => {
  return service .delete(url, data);
};

export default service

在上述代碼中,我們創(chuàng)建了一個名為 service 的 axios 實例,并設置了一些默認的配置項和攔截器。其中,request 攔截器用于請求發(fā)送前對請求做一些處理,例如設置請求頭、請求參數(shù)等;response 攔截器用于對返回數(shù)據(jù)進行處理,例如根據(jù)接口返回的狀態(tài)碼判斷請求是否成功等。

3.將 axios 封裝到一個函數(shù)中,api.js

import service from '@/utils/request'
export function request(config) {
  return service(config)
}

在上述代碼中,我們將 axios 封裝到一個名為 request 的函數(shù)中,并導出該函數(shù),以便在其他地方可以直接調用。

4.在代碼中使用封裝好的 axios 請求

import { request } from '@/api'
request({
  url: '/user',
  method: 'get'
}).then(response => {
  console.log(response)
})

5.結合request.js中四種請求,代替上面3和4標題

import { get, post,put, delete } from '@/utils/request';

// 發(fā)送GET請求的示例
get('/users', { id: 1 })
  .then((response) => {
    // 處理響應數(shù)據(jù)
    console.log(response);
  })
  .catch((error) => {
    // 處理請求錯誤
    console.error(error);
  });

// 發(fā)送POST請求的示例
post('/users', { name: 'John', age: 25 })
  .then((response) => {
    // 處理響應數(shù)據(jù)
    console.log(response);
  })
  .catch((error) => {
    // 處理請求錯誤
    console.error(error);
  });

在上述代碼中,我們引入封裝好的 request 函數(shù),并通過傳遞一個包含請求參數(shù)的配置對象來發(fā)起網(wǎng)絡請求。

總結

需要注意的是,在實際應用中,我們可能還需要根據(jù)業(yè)務需求進一步封裝不同類型的請求,例如 GET 請求、POST 請求、PUT請求、DELETE等,以及處理請求錯誤等情況。

到此這篇關于vue3中封裝axios請求的文章就介紹到這了,更多相關vue3封裝axios請求內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • Vue3中結合ElementPlus實現(xiàn)彈窗的封裝方式

    Vue3中結合ElementPlus實現(xiàn)彈窗的封裝方式

    這篇文章主要介紹了Vue3中結合ElementPlus實現(xiàn)彈窗的封裝方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-01-01
  • Vue監(jiān)視數(shù)據(jù)的原理詳解

    Vue監(jiān)視數(shù)據(jù)的原理詳解

    這篇文章主要為大家詳細介紹了Vue監(jiān)視數(shù)據(jù)的原理,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-02-02
  • vue多頁面項目開發(fā)實戰(zhàn)指南

    vue多頁面項目開發(fā)實戰(zhàn)指南

    一般我們的vue項目都是單頁面的,其實因為vue在工程化開發(fā)的時候依賴了webpack,webpack幫我們將所有的資源整合到一起而形成一個單頁面,下面這篇文章主要給大家介紹了關于vue多頁面項目開發(fā)的相關資料,需要的朋友可以參考下
    2022-01-01
  • 解讀Vue-loader的相關知識

    解讀Vue-loader的相關知識

    這篇文章主要介紹了解讀Vue-loader的相關知識,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-03-03
  • 解決vue無法設置滾動位置的問題

    解決vue無法設置滾動位置的問題

    這篇文章主要介紹了解決vue無法設置滾動位置的問題 ,需要的朋友可以參考下
    2018-10-10
  • Vue3利用縮放進行屏幕分辨率適配的解決方案講解

    Vue3利用縮放進行屏幕分辨率適配的解決方案講解

    本文詳細解析了如何在Vue3中實現(xiàn)一個自動根據(jù)設計寬度縮放并調整高度的響應式組件,組件的核心功能包括設計寬度設定、動態(tài)縮放比例計算和高度調整,文中通過代碼介紹的非常詳細,需要的朋友可以參考下
    2024-09-09
  • vue實現(xiàn)文件上傳和下載

    vue實現(xiàn)文件上傳和下載

    這篇文章主要為大家詳細介紹了vue實現(xiàn)文件上傳和下載,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-08-08
  • vue集成百度UEditor富文本編輯器使用教程

    vue集成百度UEditor富文本編輯器使用教程

    這篇文章主要為大家詳細介紹了vue集成百度UEditor富文本編輯器的使用教程,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-09-09
  • vue中過濾器filter的講解

    vue中過濾器filter的講解

    今天小編就為大家分享一篇關于vue中過濾器filter的講解,小編覺得內容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2019-01-01
  • 淺談vite和webpack的性能優(yōu)化和區(qū)別

    淺談vite和webpack的性能優(yōu)化和區(qū)別

    本文主要介紹了淺談vite和webpack的區(qū)別,從性能優(yōu)化的幾個方便講解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-05-05

最新評論