我已经完成了angular2英雄教程https://angular.io/docs/ts/latest/tutorial/,现在我正试图调用我用Node,Postgresql和Express制作的ral REST api。
调用API的angular2代码如下所示:
...
export class HeroService{
private heroesUrl = 'http://192.168.4.13:3000/api/boxes'; //URL til api
private headers = new Headers({'Content-Type': 'application/json'});
constructor(private http: Http) {}
getHeroes(): Promise<Hero[]> {
return this.http.get(this.heroesUrl)
.toPromise()
.then(response => response.json().data as Hero[])
.catch(this.handleError);
}
...
浏览器控制台显示:
发生错误响应{_body:对象,状态:404,ok:false,statusText:&#34;未找到&#34;,标题:标题...} EXCEPTION:未捕获(在承诺中):状态响应:找不到404:URL
我可以看到我的API未被调用。 对于我错过了哪些想法?
最好的问候。
答案 0 :(得分:1)
我发现我需要删除这些行以便后端被调用:
// Imports for faking the http service - in-memory web api
import { InMemoryWebApiModule } from 'angular-in-memory-web-api';
import { InMemoryDataService } from './in-memory-data.service';
我认为Angular2在不使用时会忽略它们,但导致新的后端API无法被调用。