2017-06-26 57 views
1

目前我的前端代码中有一个端点需要来自另一个端点的输入。Angular 4 Observable等待第一个响应

我无法弄清楚它是如何工作...

我在service.ts文件中有这样的方法:

private getINumber(): Observable<string> { 
     return this.getTokenInfo().map(res => this.pcn = res.upn.split('@')[0].substring(1)); 
    } 

这一个:

private getProfileUrl(): Observable<string> { 
     let headers = this.getDefaultHeaders(); 
     let requestOptions = new RequestOptions({ headers: headers }); 
     return this.http.get("https://api.fhict.nl/pictures/i" + !!****!! + ".jpg", requestOptions).map((res: Response) => res.json()); 
    } 

在第二请求我需要在此URL中的第一个可观察的结果:https://api.fhict.nl/pictures/i“+ getINumber()的结果 +”.jpg“

以某种方式,我必须等待第一个请求并填写URL中的INumber。有人能帮助我吗?

+0

只需订阅第一个? – JEY

+0

通过''getProfileUrl()''在订阅第一个请求的主体中传递getINumber()的结果 – CruelEngine

回答

0

我通过在预配置的URL中使用iNumber来修复它。它现在有效。谢谢