首頁 > 軟體

解析vue 3.0 使用axios庫發起 post get 的設定過程

2022-05-18 13:00:44

get post 請求開發中最普通最常見的請求方式 但是在vue 中如何實現呢 這裡記錄一下設定過程,

  • 首先在src 目錄下新建 api 資料夾 在資料夾下新建 request.js 請求基礎類別
// 請求設定過程的程式碼是這樣的 
import axios from "axios";
const requests = axios.create({
    // 設定物件
    baseURL: "", // 這裡寫自己的域名
    timeout: 5000,
    // withCredentials: true, //非同步請求攜帶Cookie  
    headers: { // 這裡的引數可以根據自己的需要設定 不需要的可以不設定
        "Content-Type": "application/x-www-form-urlencoded",
        'token': "",
        // "X-Requested-With": 'XMLHttpRequest',
        "App-Version": "",
        "Lng-Lat": "",
        "System-Version": "",
        "Mobile-Model": "",
        "Device": "",
    }
})
// 設定請求攔截器
requests.interceptors.request.use((config) => {
    // config 設定物件 請求頭
    return config
})
// 響應攔截器
requests.interceptors.response.use((resp) => {
    // 請求成功
    return resp.data
}, (error) => {
    console.log('請求失敗....................')
    return Promise.error(new Error("請求失敗"))
})
export default requests
  • 請求基礎類大概就是這樣了 主要是把請求的架子搭起來 另外設定一些基礎引數

在 api 資料夾下再新建一個 http.js 檔案 設定get 和post 請求

// 匯入請求的基礎類
import request from './request'
const http = {
    get(url, params) {
        const config = {
            method: "get",
            url: url
        }
        if (params) {
            config.params = params
        }
        return request(config)
    },
    post(url, params) {
        const config = {
            method: "post",
            url: url
        }
        if (params) {
            config.data = params;
            console.log('傳遞過來的引數========' + params.phone)
        }
        return request(config)
    }
}
export default http
  • 其實到這裡我們的請求就設定好了

下面可以開始具體發起我們的請求了

  • 根據自己需要在對應的檔案目錄下新建請求管理類 這裡以 index.js 舉例說明
// 匯入請求方法類
import http from './http'
 // 定義一個獲取驗證碼的方法  params 就是自己要傳遞的引數 不需要傳參可以不傳遞
 export function getMsgCode(params) {
    return http.post("/api/sendCode", params)
}
// 再寫一個get 請求的例子  這裡的引數我根據自己的需要寫  我這裡為了演示直接寫這裡了 最好宣告一個引數從外部傳入
export function getbilllist() {
    return http.get("/api/bill/billList", { "household_id": "10131", "pay_status": "1", "community_id": "10", "year": "2022" })
}

請求寫好了 下面看具體使用

// 在模板中宣告兩個點選事件
  <button @click="loadData">get請求</button>
  <button @click="loadbilllist">post 請求</button>
  // 匯入請求 api
  import { getbilllist, getMsgCode } from '@/api'
  // 實現請求方法
  const loadData = ()=> {
          getbilllist().then((res) => {
              console.log("請求成功返回值" + res.code + res.msg);
          }).catch((error) => {
              console.log('請求失敗返回值' + error)
          })
      }
      const loadbilllist = () => {
          console.log('點選獲取驗證碼............')
          getMsgCode({ params: { "phone": "13027703035" } }).then((res) => {
              console.log("請求成功返回值" + res.code  + res.msg);
          }).catch((error) => {
              console.log('請求失敗返回值' + error)
          })
      }
    // 在 vue3 中需要把方法返回
     return {
          loadData,
          loadbilllist
      }

到這裡axios 的具體請求方法就完成了

到此這篇關於vue 3.0 使用axios庫 發起 post get 的設定過程的文章就介紹到這了,更多相關vue 使用axios發起 post get設定內容請搜尋it145.com以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援it145.com!


IT145.com E-mail:sddin#qq.com