J'essaie d'intercepter les requêtes dans angular pour savoir si l'API prend plus de 5 secondes en vol. Si l'API prend plus de 5 secondes, un message doit être affiché comme "Requête en cours, cela va prendre un peu de temps".
Je suis en mesure de calculer le temps pris par l'API après avoir obtenu la réponse ci-dessous :
intercept(req: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> {
const startTimestamp = +new Date().getTime();
return next.handle(req).pipe(
tap(
(evt: HttpEvent<any>) => {
const endTimestamp: number = +new Date().getTime();
// get the difference
const responseTimes = (endTimestamp - startTimestamp) / 1000;
console.log(`Request took ${responseTimes} ms`);
}
)
}
Cependant, je souhaite connaître le temps pendant lequel la requête est en vol. Toute piste sera appréciée.