【发布时间】:2021-02-25 12:42:19
【问题描述】:
我正在尝试一个一个地发送 2 个 HTTP 请求;如果第一个成功,则发送第二个,如果没有,则显示与第一个请求有关的相应错误消息。
我打算使用类似的东西,但不确定它是否是这种情况下的最佳选择:
import { Component } from '@angular/core';
import { HttpClient } from '@angular/common/http';
@Component({
selector: 'app-root',
templateUrl: 'app/app.component.html'
})
export class AppComponent {
loadedCharacter: {};
constructor(private http: HttpClient) {}
ngOnInit() {
this.http.get('/api/people/1').subscribe(character => {
this.http.get(character.homeworld).subscribe(homeworld => {
character.homeworld = homeworld;
this.loadedCharacter = character;
});
});
}
}
我有不同的要求,例如PUT 和 CREATE 也使用这种方法。我知道还有其他方法,例如forkjoin,mergemap,但如果这个解决了我的问题似乎更具可读性。有什么想法吗?
【问题讨论】:
-
@Picci 好像很有用,我一定会读的。但是现在,我需要一个紧急的解决方案。有什么建议吗?
-
Here 是我写的关于处理嵌套可观察对象的简短答案。
标签: javascript angular typescript rxjs