Http GET запрос пустой результат - PullRequest
0 голосов
/ 15 декабря 2018

сейчас я играю с ASP.NET с Angular 6 во внешнем интерфейсе и не могу понять, что происходит.Для краткости: я получаю пустой JSON, хотя бэкэнд отправляет правильные значения:

проверено почтальоном

Модель:

import { Car } from '../models/car';
import { Ad } from '../models/ad';

export class Owner {
    Id: number;
    Firstname: string;
    Lastname: string;
    Phone: number;
    Email: string;
    Cars: Car[];
    Ads: Ad[];
  }

Сервис:

      /** GET owners list */
  getOwners (): Observable<Owner[]> {
    return this.http.get<Owner[]>(this.ownersUrl)
    .pipe(
      catchError(this.handleError('getOwners', []))
    );
  }

Компоненты владельцев:

  getOwners(): void{
this.ownerService.getOwners()
    .subscribe( owners => this.owners = owners);  
}

Владельцы Html:

<nb-card class="nav-card">
    <nb-card-body>
        <nb-list>
            <nb-list-item *ngFor="let owner of owners" >
                {{owner.Id}}
            </nb-list-item>
        </nb-list>
    </nb-card-body>
</nb-card>

Что я делаю?Служба, постоянно дающая мне пустое тело, не хороша: /

1 Ответ

0 голосов
/ 27 декабря 2018

как я вижу правильно, как вы проверили, что Сервис возвращает вам пустое тело json?Пожалуйста, проверьте следующее:

  1. Ваш класс Owner имеет заглавные поля, но, что касается скриншота Почтальона, ваш сервер отправляет все строчные поля.
  2. В Почтальоне выотправьте несколько заголовков, поэтому, пожалуйста, проверьте, что данные могут запрашиваться без этих заголовков, или установите эти заголовки в вашей службе:

     getOwners(): Observable<Owner[]> {
    
        const httpOptions = {
          headers: new HttpHeaders({
            'Header Key':  'Header Value',
          })
        };
    
        return this.http.get<Owner[]>(this.ownersUrl)
          .pipe(
            catchError(this.handleError('getOwners', []))
          );
    }
    
...