尝试使用http.get时出现Angular 2,localhost/null错误?
问题描述:
我正在使用Angular 2创建一个网页。当网页加载完毕后,我用的OnInit运行下面的方法(与通用名称取代):尝试使用http.get时出现Angular 2,localhost/null错误?
getAllObjects(): Promise<object[]>{
return this.http.get(this.getAllObjectsUrl).toPromise().then(response => response.json().data).catch(this.handleError);
}
我在我的浏览器验证了getAllObjects网址确实返回object
JSON格式的数组。这里是URL,如果它是有帮助的:
private getAllObjectsUrl : 'http://99.240.124.235:7060/REST/rest/companyService/getAllCompanies.json/';
然而,这种方法触发的HandleError渔获物和浏览器的调试日志显示GET localhost:3000/null 404 NOT FOUND
(我使用的是新公共管理服务器来运行它,因此本地主机)。
我不相信这是一个CORS问题,因为我下载了Chrome CORS插件和其他API调用。只有这个特定的API url导致了一个问题,我发现它很奇怪,因为我的其他API调用可以工作,并且它们遵循完全相同的格式(除了不同的url)。
我想也许appComponent
不允许OnInit,但我用另一个工作API调用getAllObjects()
替换,我没有收到此错误。
我完全被困住了,任何帮助将不胜感激(可能这个错误是因为web API,而不是前端?)。因为使用的是冒号(
答
getAllObjectsUrl不包含链接:)代替等号(=)
科隆表示变量的类型,而等号初始化。
改变这种
private getAllObjectsUrl : 'http://99.240.124.235:7060/REST/rest/companyService/getAllCompanies.json/';
此
private getAllObjectsUrl = 'http://99.240.124.235:7060/REST/rest/companyService/getAllCompanies.json/';
也就是说尴尬......我不知道为什么我用冒号为这一个URL,或者我怎么没看到... 谢谢... – Yifan