2番のアプリケーションを作成しています。サービスでhttpを使用してjsonデータにアクセスしようとしています。しかし、私は私が指定したフォルダ内のデータを持っていますが、私はそれにアクセスすることができません角2:HTTPからJSONにアクセス中にエラーが発生しました
**GET http://localhost:4200/data/products.json 404 (Not Found)**
というエラーを取得しています。
私のサービスコードは以下の通りです。
import { Injectable } from '@angular/core';
import { Http, Response } from '@angular/http';
import { Observable } from 'rxjs';
import 'rxjs/add/operator/map';
import { Item } from './item';
@Injectable()
export class ItemService {
observableItems: Observable<Item[]>
allItems: Item[] = [];
selectedItems: Item[] = [];
errorMessage: string;
url = "http://localhost:4200/data/products.json";
constructor(private http:Http) {
this.observableItems = this.http.get(this.url).map((res: Response) => res.json());
this.observableItems.subscribe(
data => this.allItems = data,
error => this.errorMessage = <any>error);
}
getItems(): Observable<Item[]> {
return this.observableItems;
}
getSelectedItems(): Item[] {
return this.selectedItems;
}
addItem(id:number): void {
let item = this.allItems.find(ob => ob.id === id);
if (this.selectedItems.indexOf(item) < 0) {
this.selectedItems.push(item);
}
}
removeItem(id:number): void {
let item = this.selectedItems.find(ob => ob.id === id);
let itemIndex = this.selectedItems.indexOf(item);
this.selectedItems.splice(itemIndex, 1);
}
}
おそらくJSON形式でデータを提供するエンドポイントにアクセスします。 'http:// localhost:4200/data/products.json'というアドレスは、ダウンロード可能な' product.json'というドキュメントがあることを示唆しています。 'http:// localhost:4200/data/products'を照会する可能性が高くなります。 – dzejdzej