angular - 在角度 6 中使用 HttpResponse 时如何每 5 分钟调用一次 API
问题描述
我正在使用一个HttpResponse
对象来返回响应。现在我正在尝试实现一个计时器以每 5 分钟访问一次 API,但是HttpResponse
在服务中使用 Object 我无法订阅计时器来访问 API。我如何实现这一目标?
服务:
async getTest(pagenumber: number, pagesize: number): Promise<HttpResponse<Object>> {
const httpOptions = {
headers: new HttpHeaders({ 'Content-Type': 'application/json' }),
observe: 'response' as 'response'
}
const response = await this.httpClient.get<HttpResponse<Object>>(this.Service.getTestURL + '/' + pagenumber + '? pageSize=' + pagesize, { observe: 'response' }).toPromise();
return response;
}
ts:
this.subscription = timer(0, 10000).pipe(
switchMap(() => this.myservice.checkdata())
).subscribe(result => this.statustext = result);
我已经尝试了所有解决方案,所以不要标记为重复问题。
解决方案
使用可以像这样使用 setInterval
export class AppComponent {
intervalID:any
ngOnInit(){
this.intervalID = window.setInterval(function(){console.log('api Call goes here')}, 300000);
}
ngOnDestroy(){
clearInterval(this.intervalID);
}
}
在setInterval中,可以放api调用
我希望这有帮助
推荐阅读
- bash - 从制表符分隔的文件中提取要在命令行参数中使用的值
- python - 正则表达式搜索字符串列表中的字符串列表
- javascript - 等待嵌套函数完成后再返回
- html - 滚动 HTML 的 iframe 验证错误
- python - 如何在python3中创建具有混合类型的多维数组?
- python - 如何在熊猫数据框中查找重复项
- php - 刷新php中的mysql表值
- c# - WPF DatePicker 不使用 Material Design 的风格
- python - 手动计算时的content-length header不一样吗?
- java - JAXB 和一个 XmlAdapter 用于映射到哈希映射中的基本类型