vue.js 中的 $http.get() 与 axios.get() 有啥区别?
Posted
技术标签:
【中文标题】vue.js 中的 $http.get() 与 axios.get() 有啥区别?【英文标题】:What is difference between $http.get() vs axios.get() in vue.js?vue.js 中的 $http.get() 与 axios.get() 有什么区别? 【发布时间】:2020-07-22 00:16:55 【问题描述】:我有点搞不懂$http.get()
和axios.get()
之间的主要区别。
我查看了很多资源,但没有得到任何满意的答案。谁能帮帮我?
【问题讨论】:
除了打电话的客户外别无他物。this.$http
甚至可以是 axios 的一个实例。
@DigitalDrifter 都做同样的事情?基本上主要区别是什么?
Axios 是一个流行的 3rd 方 http 客户端。 this.$http
只是一个引用 http 客户端实例的属性。最终调用是相同的。
【参考方案1】:
正如在source code 中所见,vue-axios 插件所做的唯一一件事就是为 Vue 实例和使用它的组件提供$http
属性。
这是依赖注入的一种形式,有两个目的:
this.$http
可以在 Vue 组件中访问,而不是随处携带 import axios from './my-axios-instance'
,这在非模块化环境中或当基 axios
在某些时候重构为 axios.create()
实例时特别有用
可以将 Axios 实例交换为 Vue 组件的层次结构,例如为功能模块配置了不同的基本 URL 或标头
【讨论】:
【参考方案2】:$http 可能是你在 vuejs 项目中定义的全局变量,请在你的项目中搜索 $http,你可能会发现它只是 axios 的实现,它可以让你轻松访问你的 axios 库全局配置。
axios 是一个能够发送和接收 Http 请求的库 在这里查看axios library。
所以简而言之,它们是相同的
【讨论】:
以上是关于vue.js 中的 $http.get() 与 axios.get() 有啥区别?的主要内容,如果未能解决你的问题,请参考以下文章
使用 vue.js 的 get/post请求错误 “ Cannot read property 'get' of undefined”
我如何在 vue js 中从 this.$http.get 返回数据