繁体   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