Я пытаюсь сделать простую вещь в angular 7. Мне просто нужно вызвать 1-й getKey REST API, затем использовать возвращенный ключ, чтобы передать его во 2-й REST API getData чтобы получить мои данные.В конце я хочу, чтобы мой сервис возвратил Observable, поэтому после завершения всего процесса я получаю возвращенные данные.Вот мой код:
import { Injectable } from '@angular/core';
import { HttpClient, HttpHeaders } from '@angular/common/http';
@Injectable({
providedIn: 'root'
})
export class MyTestServiceService {
constructor(private http: HttpClient) { }
getData$(){
return this.http.get("http://myservice/getKey").subscribe((key : string) => {
const httpOptions = {
headers: new HttpHeaders({
'Key': key
})
};
return this.http.get("http", httpOptions).subscribe(data => {
return data;
})
});
}
}
Я знаю, что я делаю это неправильно, так как я возвращаю подписку, а не Observable.Но просто не могу понять, как это сделать.Будьте осторожны, я только начинаю играть с RxJs и прихожу из опыта AngularJs / обещания:)
Спасибо