axios請求中跨域及post請求問題解決方案

2021-09-13 20:15:48 字數 1365 閱讀 9250

閒話不多說,用到vue的童鞋們應該大部分都會遇到請求中的各種奇葩問題,昨天研究一天,終於搞出來個所以然了,寫篇文章拯救一下廣大的童鞋們,某度娘當然也可以搜到,但一般解決了乙個問題後就會出現另外乙個問題,乙個接乙個,不斷的問題湧現在我的console裡面。印象中,我應該遇到過403,405,302,這幾個錯誤,403錯誤通常是因為跨域請求無許可權,而405是因為方法不允許method not allowed,偶爾還會遇到302的錯誤。以下是我在換了無數次配置後的最好的解決方案了。

1.首先,本地請求測試環境的介面需要跨域,解決跨域問題當然用配置就解決了,找到config/index.js檔案中的module.exports中的dev

proxytable: }},

2.在vue的專案入口檔案main.js中,引入我們所需要axios(已經封裝好的ajax,也可以用fetch,但是相容性不如axios好),同時需要引入qs模組(我們在做post請求的時候需要用到)

import axios from 'axios' // 引入axios 

import qs from 'qs' // 引入qs

vue.prototype.host = '/api' // 此處可根據個人習慣設定 此處的『api』 跟index.js中的『api』一致,則所有的請求只需要使用this.host即可

//新增請求***

axios.interceptors.request.use(function (config) )

} return config;

}, function (error) )

//新增響應***

axios.interceptors.response.use(function(response),function(error));

3.在vue檔案中的使用方法,get與post方法均可~

// 以下為請求測試環境的get介面測試

// 以下為請求本地json檔案的方法,本地json檔案必須放在最外層的static/***.json

axios 跨域請求 及 axios使用方式

使用axios 1 npm install axios 2 bower install axios 3 執行get請求 為給定 id 的 user 建立請求 axios.get user?id 12345 then function response catch function error 可選地...

axios實現跨域請求

在使用vue.js進行開發,我們會遇到跨域請求的情況,這裡記錄下自己所遇到的情況。使用的是目前主流的axios進行請求,首先開啟config資料夾下的index檔案,在proxytable裡面新增 proxytable 呼叫示例 then res 這裡示例的是乙個大淘客的api,target裡寫上需...

Vue axios跨域post請求

今天被axios的跨域請求燒腦了,爬了很多文章終於能正常ajax了,在此記錄一下方法.在專案目錄中安裝這兩個外掛程式 npm i axios npm i qs 解釋一下為啥要安裝qs,我用的後端是原生的php.通過axios傳送的請求是payload形式的,但是例如jq,是以form 表單提交的資料...