Vue axios庫發送請求的示例介紹

1.什麼是axios

Axios,是一個基於 promise 的網絡請求庫,作用於node.js和瀏覽器中,它是 isomorphic 的(即同一套代碼可以運行在瀏覽器和node.js中)。

使用方式如下:

<script>
        //調用axios方法得到的返回值是 promise 對象
        axios({
            //請求方式
            method: 'get',
            // 請求地址
            url: 'http://www.liulongbin.top:3006/api/getbooks'//黑馬的老師提供的地址
        }).then(function(books) {
            console.log(books.data)
        })
        // 另一種寫法
        const result = axios({
            method: 'get',
            url: 'http://www.liulongbin.top:3006/api/getbooks'
        })
        result.then(function(books){
            console.log(books.data)
        })
    </script>

2.axios請求圖例

3.使用 async 和 await 配合 axios 發起請求

async和await必須結合使用,有await必須要使用async, 有async不一定要使用await,await是將異步轉為同步,async 和 await 是 es7語法

 <script src="../lib/axios/axios.js"></script>
    <button id="app">post請求</button>
    <script>
        document.querySelector("#app").addEventListener("click", async function() {
            // 如果調用某個方法
            // await 隻能在被 async 修飾的方法中使用
            const result = await axios({
                method: 'post',
                url: 'http://www.liulongbin.top:3006/api/post',
                data: {
                    name: 'zs',
                    age: 20
                }
            })
            console.log(result)
        })
    </script>

4.使用解構賦值

1.解構賦值的時候,使用 : 進行重命名

2.調用 axios 之後,使用 async /await 進行簡化

3.使用解構賦值,從 axios 封裝的大對象中, 把 data 屬性解構出來 { data }

4.為瞭後期方便,把解構出來的 data 屬性,使用冒號 : 進行重命名 ,一般重命名為 { data: res }

5.代碼演示:

<script>
        document.querySelector("#app").addEventListener("click", async function() {
            const {
                //使用 :進行重命名
                data: res
            } = await axios({
                method: 'post',
                url: 'http://www.liulongbin.top:3006/api/post',
                data: {
                    name: 'zs',
                    age: 20
                }
            })
            console.log(res)
            //也可以單獨取值
            console.log(res.message)
        })
    </script>

5.使用 axios.get() axios.post() 來簡化請求過程

代碼如下:

 //axios.post('url地址',{post請求數據體})
        document.querySelector("#app1").addEventListener("click", async function() {
            const {data: res} = await axios.post('http://www.liulongbin.top:3006/api/post', {
                name: 'zs',
                gender: '女'
            })
            console.log(res)
 
        });
        //axios.get('url地址',{
        //     get參數
        //     params: {}
        // })
        document.querySelector("#app2").addEventListener('click', async function() {
            const {data: res} = await axios.get('http://www.liulongbin.top:3006/api/getbooks', {
                params: {
                    id: 1
                }
            })
            console.log(res)

測試結果如下:

到此這篇關於Vue axios庫發送請求的示例介紹的文章就介紹到這瞭,更多相關Vue axios發送請求內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀: