Angular 前端调用 ALB 身份验证和重定向后面的后端

问题描述 投票:0回答:1

我有一个 Angular 前端,它使用受具有 OIDC 身份验证的 AWS ALB 保护的后端 API。如果请求没有有效的 Jwt 令牌,ALB 将重定向到 Okta。

但是在云上部署后,前端到达 ALB 并获得 302 响应,其中 Location 标头指向我的 Okta OIDC 提供商,但前端不会重定向用户。

如何在后端收到 302 响应时让前端重定向用户,并在身份验证成功后让 OIDC 重定向回前端?

angular amazon-web-services amazon-elb
1个回答
0
投票

Angular 提供了

HttpClientInterceptor
,它允许您拦截 HTTP 请求和响应。因此,创建一个拦截器来检查状态代码 (302) 以及响应中是否存在
Location
标头。如果满足这两个条件,请从
Location
标头中提取 URL 并使用 Angular 路由器将用户导航到该 URL,或者只需执行以下操作:

window.location.href = event.headers.get('Location');
© www.soinside.com 2019 - 2024. All rights reserved.