中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

vue中如何使用axios數據請求get、post方法

發布時間:2021-07-17 19:32:54 來源:億速云 閱讀:1648 作者:小新 欄目:web開發

小編給大家分享一下vue中如何使用axios數據請求get、post方法,希望大家閱讀完這篇文章之后都有所收獲,下面讓我們一起去探討吧!

vue中使用axios方法我們先安裝axios這個方法

npm install --save axios

安裝之后采用按需引入的方法,哪個頁面需要請求數據就在哪個頁面里引入一下。

import axios from 'axios'

引入之后我們就可以進行數據請求了,在methods中創建一個方法

 methods:{
   getInfo(){
     let url = "url"
     axios.get(url).then((res)=>{
       console.log(res)
     })   
   } 
 }

然后我們在mounted這個生命周期中進行調用

 mounted(){
   this.getInfo() 
 }

這樣就可以在控制臺中查看數據,以上是一個簡單的get方法數據請求,下面繼續介紹一下post方法的使用,其實post和get的使用沒有什么區別只是再加上一個參數就可以了,看一下我們的代碼

 methods:{
   postInfo(){
     let url = "url"
     let params=new URLSearchParams();//這個方法在axios的官網中有介紹,除了這個方法還有qs這個方法
     params.append("key",index) 
     params.append("key",index)
     axios.post(url,params).then((res)=>{
       console.log(res)
     })
   }  
 }

同樣在mounted這個生命周期中進行調用

 mounted(){
   this.postInfo()
 }

補充:下面看下axios 數據請求

項目地址:https://github.com/axios/axios

axios是一個基于Promise,同時支持瀏覽器端和Node.js的HTTP庫,常用于Ajax請求。

Vue.js 不像jQuery 或 AngularJS,本身并沒有帶Ajax方法,因此需要借助插件或第三方HTTP庫。

GET和POST請求

 axios.get("./package.json",{
     params:{
      userId:"999"
     },
     headers:{
      token:"jack"
     }
    }).then(res=>{
     this.msg = res.data;
    }).catch(function (error) {
     console.log("error init."+error)
    });

POST:

<code class="language-javascript"> axios.post("./package.json",{ 
     userId:"888" 
    },{ 
     headers:{ 
      token:"tom" 
     } 
    }).then(res=>{ 
     this.msg =res.data 
    }).catch(err=>{ 
      console.log(err) 
    })</code>

基于Promise 可以執行多個并發請求:1

 function getUserAccount(){
    return axios.get('/user/123')
   }
   function getUserPermissions(){
    return axios.get('/user/12345/premissions')
   }
   axios.all([getUserAccount(),getUserPermissions()])
   .then(axios.spread(function(acct,perms){
     //請求都完時
   }))

也可通過寫入配置的形式發起請求:

  axios({
  method:'post',
  url:'/user/123',
  data:{
   firstName:'Fred',
   lastName:'Flintstone'
  }
  }).then(function(res){
  console.log(res)
  })

在業務中經常將其封裝為實例形式調用,便于通用配置:

// util.js
const instance = axios.create({
 baseURL:"http://jsonplaceholder.typicode.com/",
 timeout:1000,
 headers:{"Content-Type":"application/x-www-form-urlencoded"}
})
export default instance;

在mounted中調用:

Ajax({
    method:'post',
    url:'/package.json',
    data:{
    firstName:'Fred',
    lastName:'flintone'
    }
   }).then(res=>{
     console.log(res.data)
     this.msg = res.data
   })

強求攔截可用于loading..

axios.interceptors.request.use(config=>{
    console.log("require init");
    return config
   })
    axios.interceptors.response.use(response=>{
    console.log("response init");
    return response
   })

看完了這篇文章,相信你對“vue中如何使用axios數據請求get、post方法”有了一定的了解,如果想了解更多相關知識,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

博罗县| 灯塔市| 仙居县| 轮台县| 曲松县| 丹凤县| 沂南县| 苍南县| 眉山市| 佳木斯市| 方正县| 永川市| 如东县| 乐安县| 顺义区| 北安市| 安仁县| 吉木萨尔县| 安阳市| 乃东县| 温泉县| 正安县| 旬阳县| 茶陵县| 阿城市| 公主岭市| 九台市| 洪湖市| 康保县| 德昌县| 丰顺县| 江源县| 南投县| 安义县| 晋中市| 电白县| 河北区| 瑞昌市| 张家界市| 新源县| 南皮县|