Angular 2/4 - 键入的http响应

时间:2017-10-31 16:09:22

标签: json angular http typescript

我写了一个Angular 4 http get请求来从我的API获取数据。我将结果转换为接口:IPerson []。但是,如果http请求中的某些属性不是同一类型或不同名,那么对他来说没问题就没有错误。

为什么不引发错误?这意味着我们无法对http请求进行类型检查?

以下是IPerson.ts接口的代码:

export interface IPerson {
  AAA: number;
  BBB: string;
  CCC: number;
  DDD: string;
  FFF: number;
  EEE: number;
}

对于Angular服务:

getFonction(): Observable<IPerson[]> {
    return this._http
      .get<IPerson[]>('../../../assets/example.json')
      .timeout(10000)
      .catch(this.handleError);
  }

如果在json.exe中我有:

[{
   -> ABC: boolean; <-
      BBB: string;
      CCC: number;
      DDD: string;
      FFF: number;
      EEE: number;
},
{
   -> ABC: boolean; <-
      BBB: string;
      CCC: number;
      DDD: string;
      FFF: number;
      EEE: number;
}]

我将来自http调用请求的数据保存在一个名为&#34; persons:Person []&#34;的变量中。我控制台记录它我还有(没有错误):

[{
   -> ABC: boolean; <-
      BBB: string;
      CCC: number;
      DDD: string;
      FFF: number;
      EEE: number;
},
{
   -> ABC: boolean; <-
      BBB: string;
      CCC: number;
      DDD: string;
      FFF: number;
      EEE: number;
}]

0 个答案:

没有答案