Issue
How can I set new param in my request when I got error of authorization
myFunc(param): Observable<Visit[]> {
return this.http.get(this.url?session='+param
).pipe(map(data => {
let visitsList = data['visits_grid']
return visitsList.map(function(visit:any) {
return {name: visit.client_facility, date: visit.date_start, hash: visit.hash}
})
}),
retryWhen(error => error.pipe(delay(500), take(3))))
}
Solution
Try having two functions and using a switchMap
:
import { switchMap } from 'rxjs/operators';
....
myFunc(param): Observable<Visit[]> {
return this.makeApiCall().pipe(
retryWhen(error => error.pipe(
delay(500),
take(3),
switchMap(_ => this.makeApiCall({}))), // new param
);
}
private makeApiCall(param) {
return this.http.get(this.url?session='+param
).pipe(map(data => {
let visitsList = data['visits_grid']
return visitsList.map(function(visit:any) {
return {name: visit.client_facility, date: visit.date_start, hash: visit.hash}
})
}));
}
Answered By - AliF50
0 comments:
Post a Comment
Note: Only a member of this blog may post a comment.