#java #angular #rest
#Ява #угловой #остальное
Вопрос:
Я новичок в angular. Я застрял, чтобы проанализировать ответ службы Java REST на мой угловой пользовательский интерфейс. Я вижу, что ожидаемый список получен из вызова REST API на вкладке «Сеть» инспектора, но не могу проанализировать его в соответствующем файле component.ts в angular. Я получаю ответ, который не определен в журнале консоли пользовательского интерфейса. Ниже приведены подробные сведения об объекте ответа REST API
public FinalResponse(int statusCode, String statusMessage, Object objects) { super(); this.statusCode = statusCode; this.statusMessage = statusMessage; this.objects = objects; // This Object holds the Array List of Persons Object }
В моем файле componet.ts я использовал приведенный ниже код
export class Person { constructor( public personId: number, public personName: string,){ } } export class FinalResponse { constructor( public statusCode: number, public statusMessage: string, public objects:any){ } } export class PersonListComponent implements OnInit { persons: Person[] message: string finalResponse: FinalResponse constructor(private personDataService: PersonDataService, private router: Router, private route: ActivatedRoute) { } ngOnInit() { this.refreshPersonList(); } refreshPersonList(){ this.personsDataService.retrieveAllPersons().subscribe( response =gt;{ console.log("Backend service response" response) this.finalResponse =response; this.persons = this.finalResponse.objects console.log("Backend service response1 " this.persons) console.log("Backend service response1 " this.finalResponse.statusCode) console.log("Backend service response1 " this.finalResponse.statusMessage) console.log("Backend service response1 " this.finalResponse.objects) } ); } }
Здесь я прекрасно вижу код состояния и сообщение о состоянии, но не могу увидеть список объектов Person. В журнале консоли пользовательского интерфейса я вижу, что он не определен. Кто-нибудь может, пожалуйста, помочь мне с этим? Заранее спасибо, любые советы будут высоко оценены.
Комментарии:
1. Пожалуйста, добавьте журнал ответов консоли
2. person-data.service.ts:1 Вызов через Http-клиент personservice служба данных персона-список.компонент.ts:60 Ответ серверной службы 1 неопределенный человек-список.компонент.ts:61 Ответ серверной службы[объект объекта] персона-список.компонент.ts:62 Ответ серверной службы 1 200 человек-список.компонент.ts:63 Ответ серверной службы 1 Успешный человек-список.компонент.ts:64 Ответ серверной службы 1 [объект объекта],[объект объекта],[объект объекта],[объект объекта],[объект объекта],[объект объекта],[объект объекта],[объект объекта],[объектный объект], [объектный объект], [объектный объект], [объектный объект] человек-список.компонент.ts:65 Ответ серверной службы 1 не определен
3. не могли бы вы предоставить функцию retrieveAllPersons в компоненте person-data.service.ts
Ответ №1:
сначала вы неверно оцениваете ответ. data
ключевое слово необходимо для доступа к данным ответа. попробуйте это: this.persons = this.finalResponse.data.objects
Вот он:
this.personsDataService.retrieveAllPersons().subscribe( response =gt;{ console.log("Backend service response" response) this.finalResponse =response; this.persons = this.finalResponse.data.objects console.log("Backend service response1 " this.persons) console.log("Backend service response1 " this.finalResponse.statusCode) console.log("Backend service response1 " this.finalResponse.statusMessage) console.log("Backend service response1 " this.finalResponse.objects) } );
Комментарии:
1. Я попробовал это, но это показывает, что свойство ошибки компиляции «данные» не существует для типа «FinalResponse». ts(2339)
2. пожалуйста, внесите ответ в журнал консоли и вставьте сюда
3. Количество объектов, возвращаемых из REST API, правильное в соответствии с данными, которые у меня есть в БД
4. person-data.service.ts:Вызов через Http-клиент personservice службы данных person-list.component.ts:60 Ответ серверной службы 1 неопределенное лицо-list.component.ts:61 Ответ серверной службы[объект объекта] person-list.component.ts:62 Ответ серверной службы 1 200 человек-list.component.ts:63 Ответ серверной службы 1 Успешный человек-list.component.ts:64 Ответ серверной службы 1 [объект объекта],[объект объекта],[объект объекта],[объект объекта],[объект объекта],[объект объекта],[объект объекта],[объект объекта],[объект объекта], [объект объекта], [объект объекта], [объект объекта], [объект объекта], [объект объекта], [объект объекта], [объект объекта] человек-список.компонент.ts:65 Ответ серверной службы 1 не определен
5. предоставьте код
PersonDataService