【发布时间】:2019-08-24 07:56:50
【问题描述】:
使用以下 http 选项:
const httpOptions: any = {
headers: new HttpHeaders({
'Content-Type': 'application/json'
}),
observe: 'response'
};
我正在向 json-server 端点发送一个 http 帖子,如下所示:
return this.http.post(`${this.baseUrl}/events`, myEvent, httpOptions);
订阅帖子的代码如下:
this.api.saveEvent(this.event).subscribe(data => {
// Need to pick up the id from data (HttpResponse) here
});
我可以看到订阅中返回的data 是HttpResponse 类型 - 投射data 的正确方法是什么,以便我可以访问响应的body 属性并获取@987654330 json-server返回的@属性?
更新:根据下面的 cmets,我最终得到了返回 Observable<HttpRespponse<Event>> 的 saveNewEvent 方法,但是这只有在我将 http 选项作为内联匿名对象传递时才有效。在 const 中设置选项并在 post 方法中引用该 const 不起作用,我还没有弄清楚原因。有什么想法吗?
【问题讨论】:
-
能否请您发布服务器的实际响应,以便我们看到需要处理的返回数据。
标签: angular post httpresponse json-server