私は2番目の要求これは私がやっているすべてですangular2パス結果
this.runfirstmethod(headers).mergeMap(response => this.http[verb](url, response).map(res => res.json()))
に渡すために、観察を返す1つの方法の結果を取得しようとしています、私は私を考えますbuildAzureHeadersからヘッダーを取得できないので、何か間違っています。
サービス
buildAzureHeaders(headers): Observable<Headers> {
if (headers == null) {
headers = new Headers();
}
if (JSON.parse(localStorage.getItem('azureToken')).token == null || this.azureAccessToken == null) {
this.Adal4Service.acquireToken("https://graph.windows.net").map(token => {
this.azureAccessToken = token;
localStorage.setItem('azureToken', token);
headers.append('Authorization', "Bearer " + token);
return Observable.of(headers);
});
} else {
headers.append('Authorization', "Bearer " + localStorage.setItem('azureToken', JSON.parse(localStorage.getItem('azureToken')).token));
console.log("Headers: " + headers);
return Observable.of(headers);
}
}
invokeRequest(verb, url, headers?, body?): Observable<any> {
return this.buildAzureHeaders(headers).switchMap(builtHeaders => this.http[verb](url, builtHeaders))
}
成分
this.ApiAuthService.invokeRequest("get","https://graph.windows.net/aseracare.com/users?api-version=1.6").subscribe(res => {
console.log(res);
});
については
? – hlfrmn
私はそうだと思っていますが、まだそれに取り組んでいますが、スイッチマップは私の必要と思われるものです。 – user1552172