axios的安装、配置和基本使用是什么样的
Admin 2022-09-05 群英技术资讯 315 次浏览
npm install axios --save
在src目录下新建一个request文件夹,在里面新建index.ts(或者.js)文件,编辑代码如下:
import axios from 'axios'
// 创建一个 axios 实例
const service = axios.create({
baseURL: '/api', // 所有的请求地址前缀部分
timeout: 60000, // 请求超时时间毫秒
withCredentials: true, // 异步请求携带cookie
headers: {
// 设置后端需要的传参类型
'Content-Type': 'application/json',
'token': 'your token',
'X-Requested-With': 'XMLHttpRequest',
},
})
// 添加请求拦截器
service.interceptors.request.use(
function (config) {
// 在发送请求之前做些什么
return config
},
function (error) {
// 对请求错误做些什么
console.log(error)
return Promise.reject(error)
}
)
// 添加响应拦截器
service.interceptors.response.use(
function (response) {
console.log(response)
// 2xx 范围内的状态码都会触发该函数。
// 对响应数据做点什么
// dataAxios 是 axios 返回数据中的 data
const dataAxios = response.data
// 这个状态码是和后端约定的
const code = dataAxios.reset
return dataAxios
},
function (error) {
// 超出 2xx 范围的状态码都会触发该函数。
// 对响应错误做点什么
console.log(error)
return Promise.reject(error)
}
)
export default service
在src目录下新建一个apis文件夹,这里面放入今后所有的请求文件,例如新建一个请求用户信息的接口user.ts,代码如下:
// 导入axios实例
import httpRequest from '@/request/index'
// 定义接口的传参
interface UserInfoParam {
userID: string,
userName: string
}
// 获取用户信息
export function apiGetUserInfo(param: UserInfoParam) {
return httpRequest({
url: 'your api url',
method: 'post',
data: param,
})
}
接着在具体业务页面里使用这个请求,例如:
<script setup lang="ts">
import { onMounted } from 'vue'
import { apiGetUserInfo } from '@/apis/user'
function getUserInfo() {
const param = {
userID: '10001',
userName: 'Mike',
}
apiGetUserInfo(param).then((res) => {
console.log(res)
})
}
onMounted(() => {
getUserInfo()
})
</script>
main.js中
import axios from 'axios'
const app = createApp(App) // 将默认改写为这样
app.provide('$axios', axios)
组件内使用axios(compositionAPI)
<script setup>
import { inject } from 'vue'
const $axios = inject('$axios')
$axios.get('https://api.github.com/users').then((resp) => {
console.log(resp.data)
}).catch((err) => {
console.log(err)
})
</script>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
斐波那契数列来源于兔子繁殖问题,所以也叫兔子序列,下面这篇文章主要给大家介绍了关于JavaScript输出斐波那契数列的实现方法,需要的朋友可以参考下
JavaScript正则表达式的用法是什么?在实际的项目中,常常会使用到JavaScript正则表达式,对此这篇文章就给大家来分享一下JavaScript正则表达式的使用,对新手学习JavaScript正则表达式有一定的帮助,需要的朋友可以参考。
这篇文章主要介绍了从react hooks闭包陷阱切入浅谈react hooks,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
本篇文章给大家带来了关于JavaScript的相关知识,其中主要介绍了关于声明提升的相关内容,声明提升是JavaScript解析器的一个特性,会对代码中的函数、变量声明语句作用提取到它所在的作用域的最前面,下面一起来看一下,希望对大家有帮助。
这篇文章主要介绍js实现上传图片到服务器的功能,下文有实现的代码以及注释,对大家学习怎样实现上传图片到服务器有一定的帮助,感兴趣的朋友可以借鉴参考,接下来小编带着大家一起了解看看。
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008