我正在尝试使用 Angular http get 请求获取一个月的历史数据。我使用的是 Angular 5,服务器在 Node js 中,数据库是 mongodb。 第一次单击按钮时,它会到达服务器,并且控制台会打印在服务器上。 2 分钟后,随着 ui 访问服务器,服务器再次控制台,但 ui 没有对服务器进行调用。 1 分钟后,服务器显示发送成功的响应,但 ui 控制台显示类似错误“连接被拒绝”。我尝试使用可观察到的共享来解决它。但没有成功 这是我的服务。
getReports(params): Observable<number>{
let headers = new Headers({ 'Content-Type': 'application/json' });
let options = new RequestOptions({ headers: headers });
return this.http.get(url, options)
.map((res: Response) => res.json())
.catch(this.handleError)}
最佳答案
尝试如下
return this.http.get(url, options)
.timeout(3000, new Error('timeout exceeded'))
.map((res: Response) => res.json())
.subscribe(
data => this.data = data,
error => console.debug('ERROR', error),
() => console.log('END')
);
.catch(this.handleError)}
使用超时是可能的。 3000 表示 3 秒或 3000 毫秒
关于node.js - 当数据量很大时,Angular 2 http get 请求被调用两次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51147316/