我在RxJS方面没有太多的经验,我想在我的角度服务中用RxJS管做下面的事情。
我尝试了iif功能,但我只是没有足够的经验。
角版是:角9
RxJS版本:6.5.5
通过HttpClient检查GET请求true的响应
……真正的->检查是否可以通过HttpClient访问网站
.真->集this.isOnline =真
..通过HttpClient从另一个url获取响应
..真->集this.result = responseFromUrl
.端管
..假-> throwError(“无法获得结果”)
.假->集this.isOnline = false
..端管
……假->端管
发布于 2020-06-07 16:22:26
尝试以下几点
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");
}
);https://stackoverflow.com/questions/62247638
复制相似问题