springboot+VUE+部署(11。前端后端对接以及跨域问题)

在前端代码中找到 src->api->user.js代码

复制代码
import request from '@/utils/request'

export function login(data) {
  return request({
    url: '/vue-admin-template/user/login',
    method: 'post',
    data
  })
}

export function getInfo(token) {
  return request({
    url: '/vue-admin-template/user/info',
    method: 'get',
    params: { token }
  })
}

export function logout() {
  return request({
    url: '/vue-admin-template/user/logout',
    method: 'post'
  })
}

把URL 改成下面的代码:

复制代码
import request from '@/utils/request'

export function login(data) {
  return request({
    url: '/user/login',
    method: 'post',
    data
  })
}

export function getInfo(token) {
  return request({
    url: '/user/info',
    method: 'get',
    params: { token }
  })
}

export function logout() {
  return request({
    url: '/user/logout',
    method: 'post'
  })
}

因为我们后端的接口是"/user/*"

后端处理跨域问题:

方法1:在每个控制器下面加入 @CrossOrigin

方法2:

在common文件夹中加入MyCrossConfig类:

//要注意导入类有选择时,不能选错

复制代码
package com.example.demo.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 MyCrossConfig {
    @Bean
    public CorsFilter corsFilter()
    {
//        1.添加CORS配置信息
        CorsConfiguration config = new CorsConfiguration();
//        1)允许的域,不要写*,否则COOKIE就无法使用了
        config.addAllowedOrigin("http://localhost:8888");//这里要写请求的前端服务器
//        2)是否发送Cookie信息
        config.setAllowCredentials(true);
//        3)允许的请求方式
        config.addAllowedMethod("OPTIONS");
        config.addAllowedMethod("HEAD");
        config.addAllowedMethod("GET");
        config.addAllowedMethod("PUT");
        config.addAllowedMethod("POST");
        config.addAllowedMethod("DELETE");
        config.addAllowedMethod("PATCH");
//        4)允许的头信息
        config.addAllowedHeader("*");
//        2.添加映射路径,我们拦截一切请求
        UrlBasedCorsConfigurationSource configSource = new UrlBasedCorsConfigurationSource();
        configSource.registerCorsConfiguration("/**",config);
//        3.返回新的CorsFilter
        return new CorsFilter(configSource);
    }
}
相关推荐
tzy2331 小时前
Vue和React之争
前端·vue.js·react.js
网络点点滴1 小时前
Vue3中toRaw和MarkRaw
前端·javascript·vue.js
IT 行者1 小时前
Spring Boot 4.0.5 正式发布:Bug 修复与依赖升级
spring boot·后端·bug
李松桃1 小时前
01HTML-CSS-入门知识点
前端·css
广州华水科技1 小时前
北斗GNSS变形监测系统是什么?主要有哪几种应用?
前端
晴天161 小时前
【跨桌面应用开发】Neutralinojs快速入门指南
前端·javascript·electron·node.js
啥都想学点2 小时前
第18天:Springboot 项目搭建
java·spring boot·后端
爱学习的程序媛2 小时前
【Web前端】深入解析JavaScript异步编程
开发语言·前端·javascript·ecmascript·web
梧桐1682 小时前
马克沁机枪上阵(二):前线开辟—Claude Code 如何用一天打通前端
前端
是上好佳佳佳呀2 小时前
【前端(一)】HTML 知识梳理:从结构到常用标签
前端·html