JSON.parse - 为所有

时间:2017-07-13 10:17:09

标签: javascript json angular

在我的Angular 2应用程序中,我需要解析一些包含旧ASP.NET日期的JSON字符串,例如/Date(1497984415000-0500)/(我从WCF服务接收它们)。

我知道我可以将 JSON.parse reviver parameter一起使用,但我需要在我的网络应用程序的许多页面中多次这样做,所以我想设置一次reviver为了所有人。

我怎样才能实现这一目标?

1 个答案:

答案 0 :(得分:1)

你可以通过这样的管道函数发送所有函数来做到这一点。

 postMethods(url:any,data:any) :Observable<Response>{

       let headers = new Headers();
        headers.append('Content-Type', 'application/json');  

      return this.http.post(`${API_URL+url}`,JSON.stringify(data),{headers:headers})
            .map((res:Response)=>{

              return this.dateConverter(res.json());})
            .catch((error:any)=>{
                return Observable.throw(error)||'server error';});
       }


 dateConverter(date){
    return new Date(date);
  }

您可能有如下的许多api方法。您可以调用上述函数发送请求。

 testMethod(data){
      return this.postMethods('/setting/ChangePassword',data)
            .map(res=>{
              return res;
            });
    }