axios 跨域請求 及 axios使用方式

2021-09-05 09:18:22 字數 3413 閱讀 3382

使用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.get('/user',

}).then(function (response) )

.catch(function (error) );

執行post請求

axios.post('/user', )

.then(function (response) )

.catch(function (error) );

執行多個併發

function getuseraccount() 

function getuserpermissions()

axios.all([getuseraccount(), getuserpermissions()])

.then(axios.spread(function (acct, perms) ));

請求配置

],

// `transformresponse` 在傳遞給 then/catch 前,允許修改響應資料

transformresponse: [function (data) ],

// `headers` 是即將被傳送的自定義請求頭

headers: ,

// `params` 是即將與請求一起傳送的 url 引數

// 必須是乙個無格式物件(plain object)或 urlsearchparams 物件

params: ,

// `paramsserializer` 是乙個負責 `params` 序列化的函式

// (e.g.

paramsserializer: function(params) )

},// `data` 是作為請求主體被傳送的資料

// 只適用於這些請求方法 'put', 'post', 和 'patch'

// 在沒有設定 `transformrequest` 時,必須是以下型別之一:

// - string, plain object, arraybuffer, arraybufferview, urlsearchparams

// - 瀏覽器專屬:formdata, file, blob

// - node 專屬: stream

data: ,

// `timeout` 指定請求超時的毫秒數(0 表示無超時時間)

// 如果請求話費了超過 `timeout` 的時間,請求將被中斷

timeout: 1000,

// `withcredentials` 表示跨域請求時是否需要使用憑證

withcredentials: false, // 預設的

// `adapter` 允許自定義處理請求,以使測試更輕鬆

// 返回乙個 promise 並應用乙個有效的響應 (查閱 [response docs](#response-api)).

adapter: function (config) ,

// `auth` 表示應該使用 http 基礎驗證,並提供憑據

// 這將設定乙個 `authorization` 頭,覆寫掉現有的任意使用 `headers` 設定的自定義 `authorization`頭

auth: ,

// `responsetype` 表示伺服器響應的資料型別,可以是 'arraybuffer', 'blob', 'document', 'json', 'text', 'stream'

responsetype: 'json', // 預設的

// `xsrfcookiename` 是用作 xsrf token 的值的cookie的名稱

xsrfcookiename: 'xsrf-token', // default

// `xsrfheadername` 是承載 xsrf token 的值的 http 頭的名稱

xsrfheadername: 'x-xsrf-token', // 預設的

// `onuploadprogress` 允許為上傳處理進度事件

onuploadprogress: function (progressevent) ,

ondownloadprogress: function (progressevent) ,

// `maxcontentlength` 定義允許的響應內容的最大尺寸

maxcontentlength: 2000,

// `validatestatus` 定義對於給定的http 響應狀態碼是 resolve 或 reject promise 。如果 `validatestatus` 返回 `true` (或者設定為 `null` 或 `undefined`),promise 將被 resolve; 否則,promise 將被 rejecte

validatestatus: function (status) ,

// `maxredirects` 定義在 node.js 中 follow 的最大重定向數目

// 如果設定為0,將不會 follow 任何重定向

maxredirects: 5, // 預設的

// `httpagent` 和 `httpsagent` 分別在 node.js 中用於定義在執行 http 和 https 時使用的自定義**。允許像這樣配置選項:

// `keepalive` 預設沒有啟用

// 'proxy' 定義**伺服器的主機名稱和埠

// `auth` 表示 http 基礎驗證應當用於連線**,並提供憑據

// 這將會設定乙個 `proxy-authorization` 頭,覆寫掉已有的通過使用 `header` 設定的自定義 `proxy-authorization` 頭。

proxy:

},// `canceltoken` 指定用於取消請求的 cancel token

canceltoken: new canceltoken(function (cancel) )

}

axios實現跨域請求

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

Vue使用axios跨域請求

首先說axios跨域的問題,使用vue必然要請求api介面獲得資料,那麼跨域的問題也隨之而來,你總會碰到的。下面針對解決使用axios請求 服務端,返回 access control allow 和 405 method not allowed http訪問控制 cors 強烈建議仔細閱讀 下面根據...

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

閒話不多說,用到vue的童鞋們應該大部分都會遇到請求中的各種奇葩問題,昨天研究一天,終於搞出來個所以然了,寫篇文章拯救一下廣大的童鞋們,某度娘當然也可以搜到,但一般解決了乙個問題後就會出現另外乙個問題,乙個接乙個,不斷的問題湧現在我的console裡面。印象中,我應該遇到過403,405,302,這...