Angular 5中的请求/响应变换器

时间:2018-03-14 07:47:59

标签: angular angular-httpclient

我想转换每个REST请求/响应。例如,

REST响应:

{
   "id" : "123,
   "name" : "dheepan"
}

打字稿类

class Person {
    id : number;
    displayName : string;
    _new : boolean;
    _edit : boolean;
}

所以要将其余的响应转换为相应的Person类,我已经编写了像

这样的转换器
interface PersonConverter {
   fromRestObject(person: any): Person;
   fromRestArray(persons : any[]) : Person[];
   toRestObject(person : Person) : any;
   toRestArray(persons : Person[]) : any[]; 
}

在每次休息呼叫之前/之后我可以将转换器与地图运算符

一起使用
.map(persons => new PersonConverter().fromRestArray(persons));

现在问题是,随着应用程序的增长,转换器的数量也在增长,这种方法看起来很丑陋。如果出现异常,则需要额外的工作来确定异常是来自REST资源还是转换器。有没有更好的方法来使用Angular 5转换每个请求/响应对象?

0 个答案:

没有答案