Angular前端和JavaSpringBoot后端中被CORS策略阻止的请求?
创始人
2024-10-29 02:00:38
0

1.在Spring Boot后端的控制器类中添加@CrossOrigin注解。

如下所示:

@RestController
@CrossOrigin(origins = "http://localhost:4200")
public class MyController {
   ...
}

其中,origins参数指定了允许的源,可以是域名或IP地址。此参数是可选的,也可以设置为通配符*,表示允许来自任何源的请求。

2.在Angular前端的请求配置中添加withCredentials: true选项。

如下所示:

import { HttpClient } from '@angular/common/http';

@Injectable()
export class MyService {
    private url = 'http://localhost:8080/some-endpoint';

    constructor(private http: HttpClient) {}

    getData() {
        const options = { withCredentials: true };
        return this.http.get(this.url, options);
    }
}

这里withCredentials选项指定了是否在请求中发送凭证(如cookie)。

需要注意的是,如果在Angular前端中使用了HttpInterceptor拦截器,则可能需要在拦截器中手动添加withCredentials选项,如下所示:

import { Injectable } from '@angular/core';
import { HttpInterceptor, HttpHandler, HttpRequest } from '@angular/common/http';

@Injectable()
export class MyInterceptor implements HttpInterceptor {
    intercept(req: HttpRequest, next: HttpHandler) {
        const authReq = req.clone({ withCredentials: true });
        return next.handle(authReq);
    }
}

这里拦截器使用clone()方法创建了一个新的请求,并将withCredentials选项添加到了该请求中。需要将拦截器添加到providers数组中,以便在应用程序中使用。

相关内容

热门资讯

我来教大家!!陕麻圈内购破解辅... 我来教大家!!陕麻圈内购破解辅助(透视)卡五星辅助(详细开挂外开挂教程);进入游戏-大厅左侧-新手福...
教程辅助!微信微乐小程序修改器... 您好,微信微乐小程序修改器这款游戏可以开挂的,确实是有挂的,需要了解加去威信【136704302】很...
玩家必看教程!!江西中至科技(... 玩家必看教程!!江西中至科技(透视)贪玩娱乐科技(详细开挂外开挂教程)1、贪玩娱乐科技系统规律教程、...
玩家必备科普!川川云脚本破解(... 玩家必备科普!川川云脚本破解(透视)新老夫子脚本(详细开挂外开挂教程);1、上手简单,内置详细流程视...
实测交流!创思维激k透视免费(... 实测交流!创思维激k透视免费(透视)南昌微乐自建房辅助(详细开挂外开挂教程);1、创思维激k透视免费...
我来教教大家!心悦填大坑规律(... 我来教教大家!心悦填大坑规律(透视)789大菠萝辅助(详细开挂外开挂教程);1、进入游戏-大厅左侧-...
总算了解!!中至余干辅助器20... 总算了解!!中至余干辅助器2024(透视)贪吃蛇辅助器怎么下载(详细开挂外开挂教程)1、玩家可以在中...
分享认知!新玄龙辅助(透视)新... 分享认知!新玄龙辅助(透视)新青鸟辅助(详细开挂外开挂教程)1、不需要AI权限,帮助你快速的进行新玄...
重大消息!微信老友广东辅助(透... 重大消息!微信老友广东辅助(透视)兴动互娱有辅助吗(详细开挂外开挂教程);1、下载好兴动互娱有辅助吗...
一分钟揭秘!微信茶馆辅助器(透... 一分钟揭秘!微信茶馆辅助器(透视)传送屋激k看底牌辅助软件(详细开挂外开挂教程)1、金币登录送、破产...