淺談vue-resource和vue-axios的區別

淺談vue-resource和vue-axios的區別

可能有的人對vue-resource 和vue-axios比較陌生,也可能用到了都不知道。他其實就是我們vue請求裡面的 this.$http.*** 和 this.axios.***

vue-resource

vue-resource是Vue.js的一款插件,它可以通過XMLHttpRequest或JSONP發起請求並處理響應。也就是說,jquery的 $.ajax 能做的事情,vue-resource一樣也能做到,而且vue-resource的API更為簡潔。另外,vue-resource還提供了非常有用的inteceptor功能,使用inteceptor可以在請求前和請求後附加一些行為,比如使用inteceptor在ajax請求時顯示loading界面。

1、體積小

vue-resource非常小巧,在壓縮以後只有大約12KB,服務端啟用gzip壓縮後只有4.5KB大小,這遠比

jQuery的體積要小得多。

2、支持主流的瀏覽器

和Vue.js一樣,vue-resource除了不支持IE 9以下的瀏覽器,其他主流的瀏覽器都支持。

3、支持Promise API和URI Templates

Promise是ES6的特性,Promise的中文含義為“先知”,Promise對象用於異步計算。

URI Templates表示URI模板,有些類似於ASP.NET MVC的路由模板。

4、支持攔截器

攔截器是全局的,攔截器可以在請求發送前和發送請求後做一些處理。攔截器在一些場景下會非常有用,

比如請求發送前在headers中設置access_token,或者在請求失敗時,提供共通的處理方式。

vue-axios

vue2.0之後,就不再對vue-resource更新,而是推薦使用axios。基於 Promise 的 HTTP 請求客戶端,可同時在瀏覽器和 Node.js 中使用。

功能特性

1、在瀏覽器中發送 XMLHttpRequests 請求

2、在 node.js 中發送 http請求

3、支持 Promise API

4、攔截請求和響應

5、轉換請求和響應數據

6、取消請求

7、自動轉換 JSON 數據

8、客戶端支持保護安全免受 CSRF/XSRF 攻擊


分享到:


相關文章: