繁体   English   中英

服务器不响应时处理错误

[英]Handle error when server does not respond

我的应用程序是使用Angular 2构建的。我使用的典型模式如下所示。 如果发生服务器错误,我会根据需要执行很多操作。 在下面的示例中,我使用注释来指示重定向到错误页面。

但是,有时会出现问题,并且服务器无法响应,从而导致前端在旋转器旋转时仍处于挂起状态。 我想知道如何处理这种情况。 有没有一种惯例? 有没有办法在某个时候以一种优雅的方式重定向? 我觉得我可以在某个特定的时间添加超时来触发,但这确实像是一个hack。

private getSites() {
  this.spinner.show();
  this.sitesService.getSites(1)
    .subscribe(
      _data => {
        this.sites = _data;
        this.spinner.hide();
        this.loading = false;
      },
      _error => {
        // Redirect to < something went wrong >
        this.spinner.hide();
      }
    );

}

根据答复,我能够学习各种方法来处理这种情况。 我最喜欢的一个是使用超时运算符。 感谢大家。

private getSites() {
  this.spinner.show();
  this.sitesService.getSites(1)
    .timeout(6000)
    .subscribe(
      _data => {
        this.sites = _data;
        this.spinner.hide();
        this.loading = false;
      },
      _error => {
        // Redirect to < something went wrong >
        this.spinner.hide();
      }
    );

}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM