从 HTTP 正文响应中获取特定数据

Getting a specific data from HTTP body response

我正在通过 post 向我的 api 发送一些数据,当它成功提交时,它将 return 一些数据,我想访问响应数据。

这是我从我的组件中得到的:

this.http.post(this.restProvider.restApiUrl+'saveDraft', draftData, options)
.subscribe(data => {
   console.log(data["_body"]);
}, error => {
   console.log("Oooops!");
});

console.log(data["_body"]); 将生成以下数据: {"status":"ok","data_id":"2","statusMsg":"Saved as draft"}

我现在想做的是访问 data_id 的值,但我不确定如何将它放入我的组件中。我认为可以通过 data["_body"]["data_id"]

之类的方式访问它

我认为数据是一个对象。试试这个:

console.log(data._body.data_id);
console.log(data["_body"].data_id);

最后,我通过将 console.log(data["_body"]); 更改为 console.log(data.json().data_id);

解决了这个问题

我参考了这个讨论 并尝试应用 JSON 并且有效。