我是 angular 新手,我在 web API 方面遇到了麻烦。我正在调用一个 web api,我想在一定时间内调用一个 api 的任务,如果我在这段时间内没有得到任何响应,我需要执行另一个 api。我正在分享我的代码,以便更好地理解。任何帮助都会很棒。在此处输入图像描述
您可以在 http 请求中设置 rxjs 超时,如下所示...
import { timeout, catchError, tap } from "rxjs/operators";
...
this.http.get(url, options)
.pipe(
timeout(5000),
tap((data) => {
// do stuff
}),
catchError(err => {
return throwError(err);
})
);
时间以毫秒为单位,如果超过该时间,则会引发错误,并显示一条消息,指示是由于超时造成的。
您也可以使用拦截器执行此操作,但无法为不同的请求设置不同的超时。