簡體   English   中英

讀取Angular 7中POST請求的響應

[英]Read the response from POST request in Angular 7

嗨,我有一個Angular 8應用程序,可將數據發布到API(PHP中的REST)。 我可以使用以下代碼將數據發布到服務器並創建新記錄。

問:我想閱讀API方法的響應。 例如,我在API中具有檢查記錄是否已創建的邏輯。 如果該帳戶存在,則API返回

["MSG":"DUPLICATE_FOUND","STATUS":200]

否則返回

["MSG":"SUCCESS","STATUS":200]

我想在訂閱后讀取屬性MSG,然后應用邏輯(即顯示錯誤消息或其他操作)。 但是當我執行console.log(data)時,它返回null。

注冊組件:

this.userService.addNewUser(user).subscribe(
(data) => {
   console.log(data);
},
error => console.log(error)

user.service.ts

const httpOptions = {
headers: new HttpHeaders({
'Content-Type':  'application/json'
})
};

addNewUser (user): Observable<any> {
return this.http.post<any>(endpoint + 'createNewUser', user, httpOptions).pipe(
  catchError(this.handleError<any>())
);
}

謝謝。

問題是您的回復格式不正確。 Angular期望的是有效的JSON響應,在您的情況下,您可以使用大括號{}替換方括號[] ,例如:

之前

["MSG": "DUPLICATE_FOUND", "STATUS": 200]

{"MSG": "DUPLICATE_FOUND", "STATUS": 200}

你可以使用一些在線軟件來驗證您的JSON在有疑問的情況下,我喜歡這一個

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM