我正在使用角度2,我一直在尝试使用一些REST api(jax rs),但是当我调用getALL方法时,我收到此错误“超出最大调用堆栈大小”。 这是我的服务:
getAll(): Observable<Artist[]> {
let artists$ = this.http
.get(`${this.baseUrl}`, {headers:
this.getHeaders()}).map(this.extractData)
.catch(this.handleError);
return artists$;
}
private extractData(res:Response) {
let body = res.json();
return body || [];
}
private handleError(error:any) {
let errMsg = (error.message) ? error.message :
error.status ? `${error.status} - ${error.statusText}` : 'Server error';
console.error(errMsg);
return Observable.throw(errMsg);
}
这是Artist界面:
export interface Artist {
id?:number;
firstname?:string;
stageName?:string;
artistPictures?:string;
interaction?:Interaction[];
creations?:Creation[];
createdDate?:Date;
owner?:User;
}
我猜这个问题是由属性所有者造成的,因为艺术家与用户有一对多的关系,但我不知道如何解决这个问题。