1. 程式人生 > >vue-resource基礎介紹

vue-resource基礎介紹

地址 function http請求 align 引用 發出 ogre fun 接受

1.vue-resource 的請求api是按照rest風格設計的,它提供了7種請求api

  • get(url, [data], [options]);

  • head(url,[data],[options]);
  • post(url, [data], [options]);

  • put(url, [data], [options]);

  • patch(url, [data], [options]);

  • delete(url, [data], [options]);

  • jsonp(url, [data], [options]);

都是接受三個參數:

  • url(字符串),請求地址。可被options對象中url屬性覆蓋。

  • data(可選,字符串或對象),要發送的數據,可被options對象中的data屬性覆蓋。

  • options對象

    參數類型描述
    url string 請求的URL
    method string 請求的HTTP方法,例如:‘GET‘, ‘POST‘或其他HTTP方法
    body Object, FormData string request body
    params Object 請求的URL參數對象 ,get
    headers Object request header 第三方請求數據需要用到
    timeout number 單位為毫秒的請求超時時間 (0 表示無超時時間)
    before function(request) 請求發送前的處理函數,類似於jQuery的beforeSend函數
    progress function(event) ProgressEvent回調處理函數
    credentials boolean 表示跨域請求時是否需要使用憑證
    emulateHTTP boolean 發送PUT, PATCH, DELETE請求時以HTTP POST的方式發送,並設置請求頭的X-HTTP-Method-Override
    emulateJSON boolean 將request body以application/x-www-form-urlencoded content type發送
  • emulateHTTP的作用

    如果Web服務器無法處理PUT, PATCH和DELETE這種REST風格的請求,你可以啟用enulateHTTP現象。啟用該選項後,請求會以普通的POST方法發出,並且HTTP頭信息的X-HTTP-Method-Override屬性會設置為實際的HTTP方法。
    Vue.http.options.emulateHTTP = true;
    
    
  • emulateJSON的作用

    如果Web服務器無法處理編碼為application/json的請求,你可以啟用emulateJSON選項。啟用該選項後,請求會以application/x-www-form-urlencoded作為MIME type,就像普通的HTML表單一樣。
    Vue.http.options.emulateJSON = true;
    
    

2.如何使用vue-resource

  • 安裝vue-resource
npm i vue-resource --save -dev

--save 是安裝到開發依賴中去

dependencies是項目的依賴,是項目上線後仍然要用的插件
devDependencies是開發的依賴,是在開發過程中要使用的
  • 要引用插件
<script src="node_modules/vue-resouce/dist/vue-resource.min.js"></script>
  • 調用get方法:
<div id="app">
  <a href="javascript:;" v-on:click="ready">get 請求</a>
 </div>
<script>
new vue({
el:"app:,
methods:{
ready: function() {
        // get 請求
        this.$http.get(this.apiUrl,{
         params:{ //填寫傳輸的參數
        
         usersId:"101"
       }
      }) .then(res=> {
                // 請求成功回調

            },err => {
                // 請求失敗回調

            });
    }
}
})
</script>
  • 調用post方法
post:function(){
     this.$http.post(url,{usrid:‘105"},{header:{acction:"sss"}).then(res=>{
   //成功回掉
})
}
  • 調用jsonp跨域請求
jsonp: function() {
  this.$http.jsonp(this.apiUrl).then(function(response){
    this.$set(‘gridData‘, response.data)
  })
}

vue-resource是一個非常輕量的用於處理HTTP請求的插件,它提供了兩種方式來處理HTTP請求:
1、使用Vue.http或this.$http
2、使用Vue.resource或this.$resource

vue-resource基礎介紹