http - Angular: Nu se poate efectua GET pentru json local folosind HttpClient
Folosesc cel mai recent component HttpClient oferit în Angular5 pentru a face o cerere de tip get pentru un json local, dar primesc eroarea 404 de fiecare dată. Deja am importat modulul HttpClientModule în app.module.ts.
Instantaneu al structurii folderului:
Fac apelul din componenta blog-detail pentru blog-list.json. Iată codul meu:
constructor(private http: HttpClient) {
}
ngOnInit(): void {
// this.http.get('https://jsonplaceholder.typicode.com/posts/1').subscribe((data:Blog[]) => {
this.http.get('app/api/blog-list.json').subscribe((data:Blog[]) => {
this.blogs = data;
});
}
Primesc următoarea eroare:
GET http://localhost:909/app/api/blog-list.json 404 (Not Found)
Chiar dacă încerc să deschid fișierul în browser direct accesând http://localhost:909/src/app/api/blog-list.json, primesc aplicația servită acolo în locul fișierului json.
Vă rugăm să rețineți că cererea comentată către un API REST pe web are succes, dar eșuează în cazul apelului doar către un fișier JSON local.
Răspuns #1
Am reușit să repar asta, dar e cam ciudat de ce s-a întâmplat în primul rând.
Pentru aceasta a trebuit să actualizez fișierul .angular-cli.json și să adaug calea către folderul api în proprietatea assets. Acum proprietatea assets arată astfel:
"assets": [
"assets",
"app/api",
"favicon.ico"
]
