gpt4 book ai didi

javascript - 处理 http 302 重定向响应

转载 作者:数据小太阳 更新时间:2023-10-29 04:52:00 24 4
gpt4 key购买 nike

我知道 http 302 响应由浏览器直接处理,因此您无法从源代码访问任何请求属性。但我想知道是否有任何方法可以拦截 302 重定向响应。让我解释一下:

  1. 我的前端(Angular)向 A 发出一个 http 请求(我拦截传出请求)
  2. A 响应 302 Location: B
  3. 我的前端拦截了带有空字段的 302 响应,然后转到 B
  4. 这里我想拦截来自B的响应

这是我的 Angular http 拦截器代码:

@Injectable()
export class CasInterceptor implements HttpInterceptor {
intercept(req: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> {
console.log('->Interceptor');
console.log(req);
return next.handle(req).map((event: HttpEvent<any>) => {
const response = event as HttpResponseBase;
console.log('<-Interceptor');
console.log(response);
return event;
});
}
}

最佳答案

您应该从 http 响应中获取完整的 header 。

{observe:"response"} 是angular http客户端的神奇参数。所以试试这个

this.http
.get<any>(requestURL,{observe:"response"})
.subscribe(
data => {
console.log(data.header); //you will see full header here
console.log(data.url); // you can see redirect url from backend and handle it whatever you want
},
err => {
console.log(err)
}

关于javascript - 处理 http 302 重定向响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48618856/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com