0
在我的Angular 2應用程序中,我需要解析一些包含舊ASP.NET日期的JSON字符串,例如/Date(1497984415000-0500)/
(我從WCF服務接收它們)。JSON.parse - 爲所有人設置reviver
我知道我可以使用JSON.parse與reviver parameter,但我需要做的,很多時候在我的web應用程序的多頁,所以我想一勞永逸設置齊磊。
我該如何做到這一點?
在我的Angular 2應用程序中,我需要解析一些包含舊ASP.NET日期的JSON字符串,例如/Date(1497984415000-0500)/
(我從WCF服務接收它們)。JSON.parse - 爲所有人設置reviver
我知道我可以使用JSON.parse與reviver parameter,但我需要做的,很多時候在我的web應用程序的多頁,所以我想一勞永逸設置齊磊。
我該如何做到這一點?
你可以通過發送所有帶管道功能的函數來做到這一點。
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;
});
}
非常感謝您的回答。你的意思是我必須用'JSON.parse(response,myReviver)'來更改'res.json()'? – Brutus
如果你想將響應轉換爲json,'response.json()'爲你工作.JSON.parse也可以。 –
我這麼認爲,因爲我需要使用reviver來轉換ASP.NET日期! – Brutus