Правильно, метод json () не существует
дал сервис в Angular 4 и извлекаю данные через REST / JSON (новичок в Angular), используя этот код:
Интерфейс
export interface IItem {
Id: number;
Title: string;
}
обслуживание
import { IItem } from './item';
import { Injectable } from '@angular/core';
import { HttpClient, HttpErrorResponse, HttpHeaders } from '@angular/common/http';
import { Observable } from 'rxjs/Observable';
import 'rxjs/add/observable/throw';
import 'rxjs/add/operator/catch';
import 'rxjs/add/operator/do';
import 'rxjs/add/operator/map';
@Injectable()
export class ItemTest {
constructor(private _http: HttpClient) {}
getItems(): Observable<IItem[]> {
return this._http.get<IItem[]>('url')
.do(data => {
console.log(data);
})
}
}
Http, приведенный к IITem, работает нормально, если ответ в этом формате
[
{
"Id": 53,
"Title": "Test Document 4.docx"
},
{
"Id": 55,
"Title": "Test Document 2.docx"
}
]
Но фактический ответ от сервера выглядит следующим образом, и приведение не работает. Каков наилучший способ приведения части «результатов» ответа к массиву IItems?
{
"d": {
"results": [
{
"Id": 53,
"Title": "Test Document 4.docx"
},
{
"Id": 55,
"Title": "Test Document 2.docx"
}
]
}
}