axios的使用

一、Axios是什么

  • Axios是一個(gè)基于promise的HTTP庫(kù)(類似于jQuery的Ajax,用于HTTP請(qǐng)求)
  • 可以用于瀏覽器和node.js(既可以用于客戶端也可以用于node.js編寫的服務(wù)端)

二、Axios有哪些特性

  • 支持promise API
  • 攔截請(qǐng)求和響應(yīng)
  • 轉(zhuǎn)換請(qǐng)求數(shù)據(jù)和響應(yīng)數(shù)據(jù)
  • 取消請(qǐng)求
  • 自動(dòng)轉(zhuǎn)換 JSON 數(shù)據(jù)
  • 客戶端支持防御 XSRF

三、Axios瀏覽器支持

image.png

四、安裝

1.使用 npm:

npm install axios

2.引入axios
安裝成功后進(jìn)行引入,在vue項(xiàng)目的main.js文件中引入axios

import axios from 'axios'
Vue.prototype.$axios = axios

五、用法(vue項(xiàng)目已搭建)

  1. Axios基礎(chǔ)用法(get、post、put 等請(qǐng)求方法)

先介紹一下,Axios常用的幾種請(qǐng)求方法有哪些:get、post、put、patch、delete

get:(一般用于)獲取數(shù)據(jù)
post:提交數(shù)據(jù)(表單提交+文件上傳)
put:更新(或編輯)數(shù)據(jù)(所有數(shù)據(jù)推送到后端(或服務(wù)端))
patch:更新數(shù)據(jù)(只將修改的數(shù)據(jù)推送到后端)
delete:刪除數(shù)據(jù)

題外話,一般公司在實(shí)際開(kāi)發(fā)項(xiàng)目過(guò)程中:
(1)post:一般用于新建
(2)put:一般用于更新(適合數(shù)據(jù)量比較少的更新)
(3)patch:一般用于數(shù)據(jù)量比較大;假如一個(gè)表單的數(shù)據(jù)量很大,有很多項(xiàng),使用put的話,全部數(shù)據(jù)推送一次是比較耗性能的,這個(gè)時(shí)候可以考慮用patch,只將修改的數(shù)據(jù)推送到后端
以上這些題外話,只是一般的常規(guī)用法,不能代表一定要這樣用;當(dāng)然了,你可能會(huì)說(shuō)我用post來(lái)獲取數(shù)據(jù),行不行?這個(gè)當(dāng)然行了,絕對(duì)沒(méi)問(wèn)題!具體怎么用還是前后端一起商量著決定,以免發(fā)生不愉快的肢體沖突!

(1)get 請(qǐng)求

<template>
  <div>
    <h1>axios中g(shù)et請(qǐng)求方式</h1>
    <button @click="getJoke">獲取笑話</button>
    <p>{{ msg }}</p>
    <!--用來(lái)顯示笑話-->
  </div>
</template>
 
<script>
export default {
  data() {
    return {
      msg: null,
    };
  },
  methods: {
    getJoke() {
      //發(fā)送請(qǐng)求
      this.$axios
        .get("https://autumnfish.cn/api/joke")
        .then((res) => {
          console.log(res.data);
          //此處的this關(guān)鍵字的指向不是Vue實(shí)例,所以獲取不到data里面的數(shù)據(jù)
          this.msg = res.data;
        })
        .catch((err) => {
          console.error(err);
        });
    },
  },
};
</script>

下面了解一下請(qǐng)求信息—


image.png

2) post 請(qǐng)求

this.$axios.post('login', {user:"admin", pwd:"123"}).then(res => {
   // 返回?cái)?shù)據(jù)在 res.data 中
})
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容