欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 文旅 > 八卦 > 前后端跨域问题(CROS)

前后端跨域问题(CROS)

2025/2/24 7:15:40 来源:https://blog.csdn.net/weixin_52772457/article/details/144511770  浏览:    关键词:前后端跨域问题(CROS)

前端

在src中创建util文件,写request.js文件:

在这里插入图片描述

request.js代码如下:
import axios from 'axios'
import { ElMessage } from 'element-plus';const request = axios.create({// baseURL: '/api',  // 注意!! 这里是全局统一加上了 '/api' 前缀,也就是说所有接口都会加上'/api'前缀在,页面里面写接口的时候就不要加 '/api'了,否则会出现2个'/api',类似 '/api/api/user'这样的报错,切记!!!baseURL:'http://localhost:5050', //后端接口地址timeout: 3000
})// request 拦截器
// 可以自请求发送前对请求做一些处理
// 比如统一加token,对请求参数统一加密
request.interceptors.request.use(config => {config.headers['Content-Type'] = 'application/json;charset=utf-8';// config.headers['token'] = user.token;  // 设置请求头return config
}, error => {return Promise.reject(error)
});// response 拦截器
// 可以在接口响应后统一处理结果
request.interceptors.response.use(response => {let res = response.data;// 如果是返回的文件// if (response.config.responseType === 'blob') {//     return res// }// 兼容服务端返回的字符串数据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.log('err' + error.message) // for debug}return Promise.reject(error)}
)export default request
在要引入数据的vue文件中添加导入依赖的reque.js文件

在这里插入图片描述

后端

添加Java文件

在这里插入图片描述

创建的java文件CorsConfig.java代码如下:
package com.example.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("*");
//        corsConfiguration.setAllowCredentials(true);corsConfiguration.addAllowedHeader("*");corsConfiguration.addAllowedMethod("*");source.registerCorsConfiguration("/**",corsConfiguration);return new CorsFilter(source);}
}

后端跨域的配置可参考几种方法
链接: SpringBoot—CORS跨域问题详解和解决方案

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词