retrywhen 后更新 Ajax url
Update Ajax url after retrywhen
在重试时,我能够 re-execute 失败时的 http 请求,就像 中的示例一样。一旦失败,我希望 ajax(..) 到 re-input 新选项。假设我想在第一次 http 请求失败后更改 header 或 url。有例子吗?
retryWhen
所做的就是重新订阅其源 Observable。这意味着什么取决于你。
例如,您可以在每次重新订阅时使用 Observable.defer()
到 return 不同的 Observable:
let retries = 0;
Observable.defer(() => {
if (retries++ === 3) {
return Observable.of('whatever');
}
return this.http.get(...);
})
.retryWhen((errors: Observable) => errors)
.subscribe(...);
同样你可以使用 Observable.create()
.
在重试时,我能够 re-execute 失败时的 http 请求,就像
retryWhen
所做的就是重新订阅其源 Observable。这意味着什么取决于你。
例如,您可以在每次重新订阅时使用 Observable.defer()
到 return 不同的 Observable:
let retries = 0;
Observable.defer(() => {
if (retries++ === 3) {
return Observable.of('whatever');
}
return this.http.get(...);
})
.retryWhen((errors: Observable) => errors)
.subscribe(...);
同样你可以使用 Observable.create()
.