如何在Angular中获取HTTP请求的执行时间(我使用的是版本5)?
由于异步性,此代码返回的值不正确:
myFunction(someVariable):void {
let startFrom = new Date().getTime();
this.http.post(myurl, myjson).subscribe(res =>
console.log(res),
console.log(new Date().getTime() - startFrom));
}
答案 0 :(得分:0)
您将当前时间减去当前时间(即0)作为错误回调,而不是计算操作成功时的持续时间。代码应该是
myFunction(someVariable):void {
let startFrom = new Date().getTime();
this.http.post(myurl, myjson).subscribe(res => {
console.log(res),
console.log(new Date().getTime() - startFrom));
});
}
答案 1 :(得分:0)
这是使用rxjs运算符的解决方案,它增加了易于包含在pipe
链中的优势
myFunction(someVariable):void {
this.http.post(myurl, myjson).pipe(timeInterval()).subscribe(res => {
console.log('Res', res.value),
console.log('Time', res.interval);
});
}