在打字稿中访问Json数据
问题描述:
我有一个来自Facebook API的JSON对象,它具有公共页面的所有文章。我正在使用类型脚本来抓取对象并将其分配给一个变量。但我无法弄清楚如何访问这些字段。如何访问类型脚本中的JSON数据?在打字稿中访问Json数据
这里是我的功能:
getBadger() {
var link = 'https://graph.facebook.com/1650393515218783? fields=posts&access_token=EAAN3TCkzCxsBACdSQIu3KDiORivp0eEeQWNMBu1aT8TnEWYEqQhblcl4IZA$
this.http.get(link).subscribe(data => { this.data = data; this.posts = JSON.parse(data._body); });
答
this.posts.data[0].message
会给你在你回来的响应第一个故事的消息。
但你可能要使用比any
其他类型的响应,在这种情况下,您可以定义以下型号:
interface FbApiResponse {
posts: {
id: string;
data: FBResponseElement;
}
}
interface FbResponseElement {
message?: string;
story?: string;
created_time: string;
id: string;
}
虽然,我在此基础上进行数据的猜测。我实际上并不知道你正在使用的API是什么,它的响应是什么样的,或者它们应该被命名。
然后,您可以使用一个类型断言在您的来电JSON.parse
:
JSON.parse(data._body) as FbApiResponse