首页 > 解决方案 > Angular Observables - 相关端点

问题描述

我有端点,它返回一个端点 url。

http://example.com/get-endpoint

我想调用第一个 GET,然后使用结果 url 调用第二个 GET。如何使用链式可观察对象和 RxJS 来实现这一点?我不知道如何将第一个 GET 的 url 传递给第二个 GET

标签: angularrxjsobservable

解决方案


使用 RxJS 的switchMap 操作符

// your service...
getData(){
  return this.httpClient.get('http://example.com/get-endpoint', { responseType: "text"}).pipe(
    switchMap(url => this.httpClient.get(url))
  );
}

如果您的端点不返回字符串而是 JSON,您应该删除{ responseType: "text"}选项对象,并将正确的属性传递给内部this.httpClient.get调用。


推荐阅读