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

融合SpringBoot3和Vue3工程

根据上面两篇文章已经创建了SpingBoot3和Vue3工程,这篇文章主要讲如何将两个工程融合,从而实现一个完整的系统

安装axios封装前后端对接数据工具

npm i axios -S

在Vue3工程中创建request.js(注意端口的书写要与SpingBoot3工程中设置一样)

import axios from "axios";
import {ElMessage} from "element-plus";const request = axios.create({baseURL: 'http://localhost:9090',timeout: 30000  // 后台接口超时时间
})// request 拦截器
// 可以自请求发送前对请求做一些处理
request.interceptors.request.use(config => {config.headers['Content-Type'] = 'application/json;charset=utf-8';return config
}, error => {return Promise.reject(error)
});// response 拦截器
// 可以在接口响应后统一处理结果
request.interceptors.response.use(response => {let res = response.data;// 兼容服务端返回的字符串数据if (typeof res === 'string') {res = res ? JSON.parse(res) : res}return res;},error => {if (error.response.status === 404) {ElMessage.error('未找到请求接口')} else if (error.response.status === 500) {ElMessage.error('系统异常,请查看后端控制台报错')} else {console.error(error.message)}return Promise.reject(error)}
)export default request

为了防止跨域错误,在SpingBoot3工程里设置统一的跨域处理

package com.example.springboot.common;import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.cors.CorsConfiguration;
import org.springframework.web.cors.UrlBasedCorsConfigurationSource;
import org.springframework.web.filter.CorsFilter;/*** 跨域配置*/
@Configuration
public class CorsConfig {@Beanpublic CorsFilter corsFilter() {UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource();CorsConfiguration corsConfiguration = new CorsConfiguration();corsConfiguration.addAllowedOrigin("*"); // 1 设置访问源地址corsConfiguration.addAllowedHeader("*"); // 2 设置访问源请求头corsConfiguration.addAllowedMethod("*"); // 3 设置访问源请求方法source.registerCorsConfiguration("/**", corsConfiguration); // 4 对接口配置跨域设置return new CorsFilter(source);}
}

http://www.dtcms.com/a/494446.html

相关文章:

  • 怎么学做网站制作商水县住房城乡建设网站
  • 16-机器学习与大模型开发数学教程-第1章 1-8 泰勒展开与高阶近似
  • 【学习系列】SAP RAP 6:行为定义-Concurrency Control
  • docker 运行容器限制 CPU
  • Python自动化从入门到实战(24)如何高效的备份mysql数据库,数据备份datadir目录直接复制可行吗?一篇给小白的完全指南
  • 个人可以备案网站的内容国外直播平台tiktok
  • C语言也能干大事网站开发pdf企业网站管理系统多站多语言版
  • 清理页面缓存
  • YD925输出5V,高性价比的非隔离电源方案详细介绍
  • 零基础新手小白快速了解掌握服务集群与自动化运维(十二)Python编程之常用模块
  • SQL注入完全攻略:从手工注入到自动化工具的渗透实战
  • 做网站的价格是多少临沂网站域名
  • 深入理解 HTML `<label>` 的 `for` 属性:提升表单可访问性与用户体验
  • 大型语言模型(LLM)文本中提取结构化信息:LangExtract(一)
  • Flask应用改用Waitress运行
  • html css js网页制作成品——HTML+CSS辣条俱乐部网页设计(5页)附源码
  • Spring Boot 3零基础教程,Spring Boot WEB 开发 自动配置原理,笔记24
  • 大数据Spark(六十九):Transformation转换算子intersection和subtract使用案例
  • 郑州做网站狼牙有关网站建设文章
  • 【前端高频面试题】深入浏览器渲染原理:从输入 URL 到页面绘制的完整流程解析
  • 宿州网站建设贰聚思诚信wordpress菜单不兼容
  • C语言——深入解析C语言指针:从基础到实践从入门到精通(四)
  • Cursor 科技感的登录页面提示词
  • Ubuntu 24.04环境下的挂起转休眠
  • 【从0开始学习Java | 第21篇】网络编程综合练习
  • OpenCL初级教程
  • 【Spring AI】基于 sse 实现 MCP Server
  • vue使用限制仅允许上传 Excel 文件
  • dataease开发环境搭建
  • 一个网站开发周期wordpress导航条