发布应重定向到其他页面

时间:2019-04-30 03:48:30

标签: angular redirect routing http-post

我有一个帖子调用,该帖子应该将一些内容发布到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。

1 个答案:

答案 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
  }
);