我无法帮助自己在互联网上搜索答案,所以我会直接问。
我正在使用 angular2 和 typescript 运行前端,从服务器接收数据。
有没有办法设置一个连接,以特定的时间间隔发送 ping 以获取服务器响应时间? 然后我想使用 PrimeNG 在图表中显示它们。
最佳答案
您可以试试这个 PingService
- 只需将 url 设置为您的 url。
@Injectable()
export class PingService {
pingStream: Subject<number> = new Subject<number>();
ping: number = 0;
url: string = "https://cors-test.appspot.com/test";
constructor(private _http: Http) {
Observable.interval(5000)
.subscribe((data) => {
let timeStart: number = performance.now();
this._http.get(this.url)
.subscribe((data) => {
let timeEnd: number = performance.now();
let ping: number = timeEnd - timeStart;
this.ping = ping;
this.pingStream.next(ping);
});
});
}
}
像这样在组件的构造函数中使用它:
this._pingService.pingStream.subscribe(ping => {
this.ping = ping;
})
在您的模板中,只需将此添加到您想要显示当前 ping 的位置:
{{ping | number:'1.0-0'}}ms
Working Plunker for example usage
关于typescript - Angular2/Typescript - 获取服务器延迟,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38453655/