当前位置: 首页 > news >正文

Vue3集成axios实现ajax请求

工具安装

安装axios工具插件,务必保证是在客户端项目根目录下安装。

yarn add axios@next

简单测试 

src/views/Home.vue,先测试服务端的跨域资源共享是否能使用,代码:

<template><div class="home"><Header></Header><Footer></Footer></div>
</template><script setup>
import Header from "../components/Header.vue"
import Footer from "../components/Footer.vue"// 测试CORS的跨域配置是否有问题
import axios from "axios"
const http = axios.create()
// 测试服务端的跨域是否配置成功
http.get("http://local.api.leshen.cn:8000/home/test").then(response=>{console.log(response.data);
})</script><style scoped></style>

建立工具类

  1. 配置axios请求拦截器和响应拦截器。

src/utils/http.js,代码:

import axios from "axios"const http = axios.create({// timeout: 2500,                          // 请求超时,有大文件上传需要关闭这个配置baseURL: "http://local.leshen.cn:8000",     // 设置api服务端的默认地址[如果基于服务端实现的跨域,这里可以填写api服务端的地址,如果基于nodejs客户端测试服务器实现的跨域,则这里不能填写api服务端地址]withCredentials: false,                    // 是否允许客户端ajax请求时携带cookie
})// 请求拦截器
http.interceptors.request.use((config)=>{console.log("http请求之前");return config;
}, (error)=>{console.log("http请求错误");return Promise.reject(error);
});// 响应拦截器
http.interceptors.response.use((response)=>{console.log("服务端响应数据成功以后,返回结果给客户端的第一时间,执行then之前");return response;
}, (error)=>{console.log("服务端响应错误内容的时候。...");return Promise.reject(error);
});export default http;
<template><div class="home"><Header></Header><Footer></Footer></div>
</template><script setup>
import Header from "../components/Header.vue"
import Footer from "../components/Footer.vue"
// 测试CORS的跨域配置是否有问题
import http from "../utils/http.js"// // 测试CORS的跨域配置是否有问题
// import axios from "axios"
// const http = axios.create()
// // 测试服务端的跨域是否配置成功
// http.get("http://local.api.leshen.cn:8000/home/test").then(response=>{
//   console.log(response.data);
// })// 测试服务端的跨域是否配置成功
http.get("/home/test").then(response=>{console.log(response.data);
})</script><style scoped></style>


http://www.mrgr.cn/news/51384.html

相关文章:

  • 电源设计-一步一步推导常用公式
  • 一、IPD体系大纲
  • Git-本地项目同步到远程仓库
  • SpringCloudAlibaba升级手册
  • 基于 Konva 实现Web PPT 编辑器(三)
  • 博科测试IPO上市丨为行业提供智能测试综合解决方案
  • 建筑八大员标准员试题附答案
  • 从一个事故中理解 Redis(几乎)所有知识点
  • CAS相关知识
  • simpleITK和itk获取mask图像轮廓
  • 实战篇:(十一)JavaScript 网页设计案例:使用 Canvas 实现趣味打气球小游戏
  • 深度解析 Redis 存储结构及其高效性背后的机制
  • ESB服务集成是什么?如何运作的?有什么优势?
  • 大健康创新企业:私域流量与绿色积分共铸销售飞跃
  • SpringMVC源码-接口请求执行流程,包含九大内置组件的实例化初始化,拦截器调用,页面渲染等源码讲解
  • JavaSE——集合9:Map接口实现类—HashMap(重要!!!)
  • 快速创建品牌百度百科词条
  • 三类非常重要的约定管辖的法律效力
  • 9月份最新海关数据公布,增长6.2%
  • 2024双十一养猫清单给你们整理出来了高性价比盲抄作业不踩雷