Angular HTTP get请求在ngOnInit中不起作用
我试图在组件加载时从后端API获取数据 服务文件中的API调用 其给出的响应低于(200)。我没有得到任何错误Angular HTTP get请求在ngOnInit中不起作用,angular,httpclient,Angular,Httpclient,我试图在组件加载时从后端API获取数据 服务文件中的API调用 其给出的响应低于(200)。我没有得到任何错误 code: "EINVALIDSTATE" message: "Requests can only be made in the LoggedIn state, not the SentClientRequest state" 如果我在(单击)上调用相同的服务,它可以正常工作 testClick(): void { this.post
code: "EINVALIDSTATE"
message: "Requests can only be made in the LoggedIn state, not the SentClientRequest state"
如果我在(单击)
上调用相同的服务,它可以正常工作
testClick(): void {
this.postDataService.getFiles().subscribe( data => {
console.log('test', data);
});
}
在ngOnInit
中调用服务是否有任何问题。如何让它工作
编辑
经过这么多的故障排除,我发现当我试图直接加载子路由时,它给出了一个错误。如果我加载主页,然后单击链接导航到任何组件,则此api调用工作正常。顺便说一句,请求只能在LoggedIn状态下发出,而不是SentClientRequest状态下发出。这不是角度错误。这是服务器端错误
testClick(): void {
this.postDataService.getFiles().subscribe( data => {
console.log('test', data);
});
}
请看一看您是否尝试过使用
OnChages
?@Rohith是的,我尝试过。但是没有运气当服务器处于sentclienterrequest
状态时,ngonit
中的请求可能被发送,而testClick
中的请求在服务器处于LoggedIn
状态时被发送。在发送请求之前,必须等待服务器处于LoggedIn
状态。您有没有办法跟踪客户端的loggedIn
状态?@fridoo经过大量调试后,我发现当我尝试直接加载子路由时出现了错误。如果我加载主页,然后单击链接导航到此组件,则此调用有效fine@fridoo对我不太明白。如果我在app.componet.ts
中使用相同的api调用,它会正常工作。是的,我知道。但它与点击一起工作,所以混淆
testClick(): void {
this.postDataService.getFiles().subscribe( data => {
console.log('test', data);
});
}