在hero.service.ts
Angular 的快速入门示例文件中,第 7 步是这段代码:
@Injectable()
export class HeroService {
private headers = new Headers({'Content-Type': 'application/json'});
private heroesUrl = 'api/heroes'; // URL to web api
constructor(private http: Http) { }
getHeroes(): Promise<Hero[]> {
return this.http.get(this.heroesUrl)
.toPromise()
.then(response => response.json().data as Hero[])
.catch(this.handleError);
}
}
我试图像这样将它翻译成我的应用程序:
@Injectable()
export class MyService {
private headers = new Headers({'Content-Type': 'application/json'});
private dataUrl = 'api/data'; // URL to web api
constructor(private http: Http) { }
getHeroes(): Promise<Hero[]> {
return this.http.get(this.dataUrl) // <-- error here
.toPromise()
.then(response => response.json().data as MyData[])
.catch(this.handleError);
}
}
我在网上得到了一个404 - Collection
数据,这是完全可以理解的,因为它只是一个随机路径。该端点没有 API。not found
this.http.get
问题: Angular 示例是如何工作的?它在哪里注册了api/heroes
模拟 HTTP 请求的路径?