最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

vue中axios的get請(qǐng)求和post請(qǐng)求的傳參方式、攔截器示例代碼

 更新時(shí)間:2023年10月14日 15:06:14   作者:鄭建007  
Post是向服務(wù)器提交數(shù)據(jù)的一種請(qǐng)求,get是向服務(wù)器發(fā)索取數(shù)據(jù)的一種請(qǐng)求,post在真正接受數(shù)據(jù)之前會(huì)先將請(qǐng)求頭發(fā)送給服務(wù)器進(jìn)行確認(rèn),然后才真正發(fā)送數(shù)據(jù),本文給大家介紹vue中axios的get請(qǐng)求和post請(qǐng)求的傳參方式、攔截器示例代碼,感興趣的朋友一起看看吧

一、GET 和 POST 傳參方式的優(yōu)缺點(diǎn)

        1.post更安全(不會(huì)作為url的一部分,不會(huì)被緩存,保存在服務(wù)器日志,以及瀏覽器瀏覽記錄中)

        2.post發(fā)送的數(shù)據(jù)量更大(get有url長(zhǎng)度限制)

        3.post能發(fā)送更多的數(shù)據(jù)類型(get只能發(fā)送ASCII字符)

        4.post比get慢

        5.Post是向服務(wù)器提交數(shù)據(jù)的一種請(qǐng)求,get是向服務(wù)器發(fā)索取數(shù)據(jù)的一種請(qǐng)求。

        5.Post是向服務(wù)器提交數(shù)據(jù)的一種請(qǐng)求,get是向服務(wù)器發(fā)索取數(shù)據(jù)的一種請(qǐng)求。

        7.post請(qǐng)求包含更多的請(qǐng)求頭

        8.post在真正接受數(shù)據(jù)之前會(huì)先將請(qǐng)求頭發(fā)送給服務(wù)器進(jìn)行確認(rèn),然后才真正發(fā)送數(shù)據(jù)

二、GET 和 POST 傳參方式的請(qǐng)求過程

post請(qǐng)求的過程:

1.瀏覽器請(qǐng)求tcp連接(第一次握手)
2.服務(wù)器答應(yīng)進(jìn)行tcp連接(第二次握手)
3.瀏覽器確認(rèn),并發(fā)送post請(qǐng)求頭(第三次握手,這個(gè)報(bào)文比較小,所以http會(huì)在此時(shí)進(jìn) 行第一次數(shù)據(jù)發(fā)送)
4.服務(wù)器返回100 continue響應(yīng)
5.瀏覽器開始發(fā)送數(shù)據(jù)
6.服務(wù)器返回200 ok響應(yīng)

get請(qǐng)求的過程

1.瀏覽器請(qǐng)求tcp連接(第一次握手)
2.服務(wù)器答應(yīng)進(jìn)行tcp連接(第二次握手)
3.瀏覽器確認(rèn),并發(fā)送get請(qǐng)求頭和數(shù)據(jù)(第三次握手,這個(gè)報(bào)文比較小,所以http會(huì)在此時(shí)進(jìn)行第一次數(shù)據(jù)發(fā)送)
4.服務(wù)器返回200 ok響應(yīng)。

三、axios使用

1、axios的安裝

$  npm install axios   // 使用npm
$  bower install axios   // 使用bower
<script src="https://unpkg.com/axios/dist/axios.min.js"></script>   // 通過cdn直接調(diào)用

2、axios的引入

import axios from 'axios';

3、get

 第一種參(參數(shù)在url上)

axios.get('/adate?id=123').then(res => {
    console.log(res);
})

第二種傳參(通過param選項(xiàng)傳遞參數(shù))

axios.get('/adate?id=123',{
    params: {
        id: 1
    }
}).then(res => {
    console.log(res);
})

4、post

axios.post('/api/axios', {
    uname: 'lisi',
    pwd: 123
}).then(ret => {
    console.log(ret.data)
})

四、攔截器

1、請(qǐng)求攔截器

import axios from 'axios'
 
const service = axios.create({
    baseURL: '基礎(chǔ)路徑',
    timeout: 15000
})
 
//添加請(qǐng)求攔截器   請(qǐng)求接口統(tǒng)一添加token
service.interceptors.request.use(
    config =>{
        // 成功的回調(diào)
    },
    error =>{
        // 失敗的回調(diào)    
    }
)
 
export default service

2、響應(yīng)攔截器

import axios from 'axios'
 
const service = axios.create({
    baseURL: '基礎(chǔ)路徑',
    timeout: 15000
})
 
// 響應(yīng)攔截器
service.interceptors.response.use(
    response => {
        // 成功回調(diào)
    },
    error => {
        // 失敗回調(diào)
    }
)
 
export default service

3、案例

/**
 * 請(qǐng)求封裝
 */
import axios from 'axios';
import configUrl from './url.js';
import store from '../store';
 
const service = axios.create({
    baseURL: configUrl.baseURL,
    // withCredentials: true, // 當(dāng)跨域請(qǐng)求時(shí)發(fā)送cookie
    timeout: 15000 // 請(qǐng)求超時(shí)
});
 
//添加請(qǐng)求攔截器   請(qǐng)求接口統(tǒng)一添加token
service.interceptors.request.use(
    config =>{
        config.headers.token = store.getters.token || '';  //請(qǐng)求添加token
        return config;
    },
    error =>{
        return Promise.reject(error);
    }
)
 
// 響應(yīng)攔截器
service.interceptors.response.use(
    response => {
        //如果接口返回token,替換本地舊token
        if (response.headers.token) {
            sessionStorage.setItem("token", response.headers.token);
        }
        //自定義設(shè)置后臺(tái)返回code對(duì)應(yīng)的響應(yīng)方式
        if (response.data.code == 203) { // 未登錄或登錄超時(shí)
            return Promise.reject(new Error('登錄超時(shí)'));
        } else { //接口正常,返回?cái)?shù)據(jù)
            return response;
        }
    },
    error => {
        if (error.message) {
				// this.$massage.error('服務(wù)器開小差了,請(qǐng)稍后再試!')   
				//錯(cuò)誤響應(yīng)
				alert('服務(wù)器開小差了,請(qǐng)稍后再試!')   
        }
        return Promise.reject(error);
    }
);
//暴露出封裝過的服務(wù)
export default service;

到此這篇關(guān)于vue中axios的get請(qǐng)求和post請(qǐng)求的傳參方式、攔截器的文章就介紹到這了,更多相關(guān)axios get請(qǐng)求和post請(qǐng)求傳參內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • vue3+vite項(xiàng)目配置ESlint、pritter插件過程

    vue3+vite項(xiàng)目配置ESlint、pritter插件過程

    這篇文章主要介紹了vue3+vite項(xiàng)目配置ESlint、pritter插件過程,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-08-08
  • Vue中子組件不能修改父組件傳來(lái)的Prop值的原因分析

    Vue中子組件不能修改父組件傳來(lái)的Prop值的原因分析

    在Vue中,父子組件之間通過Prop和Event實(shí)現(xiàn)了數(shù)據(jù)的雙向綁定,但是,Vue設(shè)計(jì)者為什么不允許子組件修改父組件傳遞的Prop呢,本文就來(lái)帶大家探究為什么子組件不能修改Prop,需要的朋友可以參考下
    2023-06-06
  • vue項(xiàng)目打包清除console.log的四種方法總結(jié)

    vue項(xiàng)目打包清除console.log的四種方法總結(jié)

    大家在項(xiàng)目開發(fā)的時(shí)候,需要看看一些后端接口返回的結(jié)果,會(huì)多次使用console.log項(xiàng)目開發(fā)完成打包的時(shí)候,發(fā)現(xiàn)控制臺(tái)一堆的console.log,非常頭疼,下面這篇文章主要給大家介紹了關(guān)于vue項(xiàng)目打包清除console.log的四種方法,需要的朋友可以參考下
    2023-04-04
  • vue之bus總線的簡(jiǎn)單使用解讀

    vue之bus總線的簡(jiǎn)單使用解讀

    這篇文章主要介紹了vue之bus總線的簡(jiǎn)單使用解讀,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-12-12
  • Vue?中使用?WebWorker的示例代碼

    Vue?中使用?WebWorker的示例代碼

    這篇文章主要介紹了Vue中使用WebWorker的示例代碼,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-08-08
  • vue3實(shí)現(xiàn)數(shù)字滾動(dòng)特效實(shí)例詳解

    vue3實(shí)現(xiàn)數(shù)字滾動(dòng)特效實(shí)例詳解

    這篇文章主要為大家介紹了vue3實(shí)現(xiàn)數(shù)字滾動(dòng)特效實(shí)例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-09-09
  • Vue3中操作dom的四種方式總結(jié)(建議收藏!)

    Vue3中操作dom的四種方式總結(jié)(建議收藏!)

    VUE是通過傳遞一些配置給Vue對(duì)象和頁(yè)面中引用插值表達(dá)式來(lái)操作DOM的,下面這篇文章主要給大家介紹了關(guān)于Vue3中操作dom的四種方式總結(jié),文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-12-12
  • vue3+vite使用svg圖片方式

    vue3+vite使用svg圖片方式

    這篇文章主要介紹了vue3+vite使用svg圖片方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2026-03-03
  • 詳解Vue2中組件間通信的解決全方案

    詳解Vue2中組件間通信的解決全方案

    Vue中組件這個(gè)特性讓不少前端er非常喜歡,我自己也是其中之一,它讓前端的組件式開發(fā)更加合理和簡(jiǎn)單。下面這篇文章主要給大家介紹了關(guān)于Vue2中組件間通信的解決全方案,文中通過示例代碼介紹的非常詳細(xì),需要的朋友們下面來(lái)一起看看吧。
    2017-07-07
  • Vue中代碼編輯器與實(shí)時(shí)預(yù)覽功能

    Vue中代碼編輯器與實(shí)時(shí)預(yù)覽功能

    CodeMirror提供了強(qiáng)大的代碼編輯功能,而Vue.js使得組件的創(chuàng)建和數(shù)據(jù)綁定變得非常簡(jiǎn)單,當(dāng)用戶編輯代碼時(shí),實(shí)時(shí)預(yù)覽會(huì)根據(jù)代碼的變化進(jìn)行更新,從而為用戶提供了一個(gè)交互式的編程環(huán)境,這篇文章主要介紹了Vue中如何進(jìn)行代碼編輯器與實(shí)時(shí)預(yù)覽,需要的朋友可以參考下
    2023-10-10

最新評(píng)論

若尔盖县| 芜湖县| 武威市| 理塘县| 涞源县| 全椒县| 萝北县| 克什克腾旗| 游戏| 藁城市| 务川| 贵德县| 襄垣县| 宜兰县| 邢台市| 都兰县| 玛沁县| 菏泽市| 乡宁县| 韩城市| 陇川县| 宁国市| 古浪县| 阳谷县| 秀山| 岳阳市| 绩溪县| 临江市| 青神县| 调兵山市| 新源县| 淮滨县| 临沭县| 温泉县| 枞阳县| 汶川县| 东山县| 广安市| 宜川县| 临清市| 梅州市|