在 Angular2 和 ionic 中读取 API 响应
Read API response in Angular2 & ionic
我已经成功地让它在 Angular2 中使用 http.get 从 API 请求数据。这是我的http.get
this.http.get('http://localhost:8001/v1/recent', {
headers: headers
})
.map(res => res.text())
.subscribe(
data => console.log(data.total),
() => console.log('API request complete')
);
该 API 基于 Laravel,它将返回如下数据
{
"total": 8,
"per_page": 50,
"current_page": 1,
"last_page": 1,
"next_page_url": null,
"prev_page_url": null,
"from": 1,
"to": 8,
"data": [
{
"id": 1,
"name": "John Doe",
"author": {
"isBlocked": "0",
}
},
{
"id": 1,
"name": "John Doe",
"author": {
"isBlocked": "0",
}
}
]
}
如何在 Angular2 中检索上面的 JSON 对象? 它都是嵌套数组?
console.log(data.total)
上面是返回未定义的
您问题中的 json 格式不正确,您在 "isBlocked":"0"
之后有一个额外的逗号(在第 15 行和第 22 行)
"author": {
"isBlocked": "0",
}
这将使它成为无效的 JSON。阻止 Angular 正确解析它。
另一个问题,您正在调用.map(res => res.text())
它将响应正文转换为字符串而不是对象。如果你想把它作为一个javascript对象,.map(res => res.json())
改用。
这是一个工作弹道
相关文章:
- Soundcloud api"未捕获的类型错误:无法读取属性'uri'“未定义”;
- json-api和错误结果:无法读取属性'长度'的未定义
- 使用Google Analytics API的区域图-未采集类型错误无法读取'库'的未定义
- Google Map API BackBoneJS 无法读取 null 的属性 'offsetWidth'
- 在 Angular2 和 ionic 中读取 API 响应
- 无法通过rest api读取json变量
- Google MAP API 未捕获类型错误:无法读取 null 的属性“offsetWidth”
- 谷歌地图/地点API JavaScript-无法读取属性'setContent'的未定义
- 谷歌地图api v3未捕获类型错误:无法读取属性'offsetWidth'为null
- 使用jQuery读取CSV以传递给Google可视化API
- Chrome.serial API - 通过串行读取正确数量的字节
- 未捕获的类型错误:无法读取 Google Analytics API 中 null 的属性“sub”
- 谷歌地图 API 中的多个标记 无法读取未定义的属性“lat”
- 读取 API 的简单 json
- Youtube Data API - 未捕获的类型错误:无法读取未定义的属性“setApiKey”
- 未捕获的类型错误:无法读取未定义的图形 API 的属性“名称”[2.5]
- Tumblr API 收到“未捕获的类型错误:无法读取未定义的属性”类型”
- 谷歌地图 API V3 读取 KML 文件
- WEB Audio API 错误:无法读取属性“getByteFrequencyData”
- 如何在 Tumblr 的读取 API 中查询多个标签