我有一个帖子调用,该帖子应该将一些内容发布到URL,在应该进行重定向之后,我看到重定向URL并在console->网络中获取正确的数据,但是Page没有被重定向。
试图访问响应的标头,它在'location'中指定了重定向网址,但也无法访问标头。
位置/ abs / Redirect?clientId = abc
我的重定向url应该是我的帖子的响应标头中上述位置键的值。
这是我发布的代码。
const test= this.http.post(url, JSON.stringify({ Req: req
})).subscribe(
data => {
console.log(data);
}
);
任何人都可以帮助我如何从Post访问响应的标头,或直接允许重定向。我正在使用角度6。
答案 0 :(得分:0)
正如@varundhariyal所指出的,路由器不会像外部链接那样工作。 解决方法 将用于:
window.location.href= yourURL
如果您想要的URL位于响应中,则可以尝试如下操作:
在构造函数中定义一个Router实例:
constructor(private route: Router)
(您需要将其导入:import { Router } from '@angular/router';
)
并使用它导航到订阅响应中的所需URL:
const test= this.http.post(url, JSON.stringify({ Req: req })).subscribe(
data => {
this.route.navigate(data.url); //Only works for routes defined in the RouterModule
window.location.href = data.url; //Absolute path to any URL
}
);