這篇“如何用vue封裝axios請求”文章的知識點大部分人都不太理解,所以小編給大家總結了以下內容,內容詳細,步驟清晰,具有一定的借鑒價值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來看看這篇“如何用vue封裝axios請求”文章吧。
創新互聯致力于互聯網品牌建設與網絡營銷,包括網站設計制作、成都網站制作、SEO優化、網絡推廣、整站優化營銷策劃推廣、電子商務、移動互聯網營銷等。創新互聯為不同類型的客戶提供良好的互聯網應用定制及解決方案,創新互聯核心團隊十年專注互聯網開發,積累了豐富的網站經驗,為廣大企業客戶提供一站式企業網站建設服務,在網站建設行業內樹立了良好口碑。
首先 在src路徑下建http文件夾 并且創建api.js env.js request.js 這三個文件
env.js文件
這個文件主要就是封裝我們的公共地址
export default { // 開發環境 dev: { baseUrl: "開發環境公共地址" }, // 測試環境test test: { baseUrl: "測試環境公共地址" }, //線上接口 prod: { baseUrl: "線上環境公共地址" } };
request.js 文件
這里主要就是創建axios 以及封裝請求攔截和相應攔截
import axios from "axios"; import env from "./env"; //這里是私有域名 但是也可以不寫 var vipUrl = "/app"; // 創建axios實例 const service = axios.create({ //這里拿線上接口測試 baseUrl: env.prod.baseUrl + vipUrl, headers:{},//請求頭 settimeout:2000,//超時時間 }); // 添加請求攔截器 service.interceptors.request.use( config => { // 在發送請求之前做些什么 config.headers["deviceType"] = "H5"; console.log("請求的數據:", config); return config; }, error => { // 對請求錯誤做些什么 return Promise.reject("出錯", error); } ); // 添加響應攔截器 service.interceptors.response.use( response => { // 對響應數據做點什么 // console.log("返回的數據", response); return response; }, error => { // 對響應錯誤做點什么 return Promise.reject(error); } ); export default service;
api.js
這個文件中主要是需要的接口地址
//引入request.js文件 import request from "./request"; // 輪播 export function getBanners(data) { return request({ url: "/banner",//這個地址是去掉公共地址和私有域名之后剩下的地址 method: "GET",//請求方式 支持多種方式 get post put delete 等等 data//發送請求要配置的參數 無參數的情況下也可以不寫 }); }
最后是在頁面中的引用
那個頁面需要請求數據 就引入相應的方法 比如我的首頁需要引入banner
<script> //引入需要的接口 import { getBanners } from "../http/api"; export default { name: "Home", components: {}, mounted() { //直接使用 .then 是請求成功的回調 .catch是請求失敗的回調 getBanners() .then(result => { window.console.log("111", result); }) .catch(err => { window.console.log("222", err); }); }, methods: {} }; </script>
以上就是關于“如何用vue封裝axios請求”這篇文章的內容,相信大家都有了一定的了解,希望小編分享的內容對大家有幫助,若想了解更多相關的知識內容,請關注創新互聯行業資訊頻道。
分享文章:如何用vue封裝axios請求
本文URL:http://vcdvsql.cn/article38/jhjgsp.html
成都網站建設公司_創新互聯,為您提供移動網站建設、小程序開發、品牌網站建設、自適應網站、域名注冊、做網站
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯