首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >具有HttpClient角的复杂管道链与RxJS

具有HttpClient角的复杂管道链与RxJS
EN

Stack Overflow用户
提问于 2020-06-07 15:30:58
回答 1查看 448关注 0票数 2

我在RxJS方面没有太多的经验,我想在我的角度服务中用RxJS管做下面的事情。

我尝试了iif功能,但我只是没有足够的经验。

角版是:角9

RxJS版本:6.5.5

通过HttpClient检查GET请求true的响应

……真正的->检查是否可以通过HttpClient访问网站

.真->集this.isOnline =真

..通过HttpClient从另一个url获取响应

..真->集this.result = responseFromUrl

.端管

..假-> throwError(“无法获得结果”)

.假->集this.isOnline = false

..端管

……假->端管

EN

回答 1

Stack Overflow用户

发布于 2020-06-07 16:22:26

尝试以下几点

代码语言:javascript
运行
复制
import { EMPTY } from 'rxjs';
import { concatMap } from 'rxjs/operators';

http.get(api).pipe(
  concatMap(reponseOne => {
    return http.get(accessWebsiteApi).pipe(
      concatMap(responseTwo => {
        this.isOnline = true;
        return http.get(anotherUrl);
      }),
      catchError(errorTwo => {
        this.isOnline = false;
        return EMPTY;
      })
    );
  })
).subscribe(
  responseFromUrl => {
    this.result = responseFromUrl;
  },
  error => {
    console.error("cant get result");
  }
);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62247638

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档