使用body.json()解析来自http.get()的响应时出错
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用body.json()解析来自http.get()的响应时出错相关的知识,希望对你有一定的参考价值。
尝试使用body.json()将数据分配给对象数组,但由于它返回了承诺,因此对此进行了尝试。但是浏览器抛出错误,告诉我json()不是函数。
getRecipes() {
this.http.get('https://recipe-book-1be52.firebaseio.com/recipes.json').subscribe(
(response: Response) => {
response.json().then(
(data) => {
this.recServ.setRecipes(data)
}
);
}
)
}
答案
您实际上可以像这样替换它,而且,可以将响应分配给接口以对其进行严格类型化。
getRecipes() {
this.http.get('https://recipe-book-1be52.firebaseio.com/recipes.json').subscribe(
(response) => this.recServ.setRecipes(response)
);
}
另一答案
Angular httpClient已经为您执行了.json()
另一答案
下面的代码段可能会帮助您:
getRecipes() {
this.http.get('https://recipe-book-1be52.firebaseio.com/recipes.json').subscribe(
(response: Response) => {
this.recServ.setRecipes(JSON.parse(JSON.stringify(response)));
}
)
}
以上是关于使用body.json()解析来自http.get()的响应时出错的主要内容,如果未能解决你的问题,请参考以下文章
为啥 Body.json() 返回一个 Promise? [复制]
使用来自 API 的 $http.get 进行 Angular.js 本地开发
无法使用来自 http get (Angular 4) 的数据填充 Chartist
vue基本知识回顾 | this.$http.get 和 this.$http.post传参 / created与mounted区别 / 富文本解析
vue基本知识回顾 | this.$http.get 和 this.$http.post传参 / created与mounted区别 / 富文本解析
vue基本知识回顾 | this.$http.get 和 this.$http.post传参 / created与mounted区别 / 富文本解析