我们有一个可用的 PHP 函数,可以使用 YouTube API v3 获取特定的 YouTube 视频信息。
我们正在尝试使用 JavaScript (jQuery) 来完成同样的事情。问题是,使用我们的 PHP 函数会导致页面在检索数据时加载非常缓慢。我们希望使用 JavaScript 能够让我们的页面在 YouTube 发出数据请求之前(或期间)加载。
首先,这是我们一个视频的示例网址(您需要 API key 才能自行查看返回的信息):
https://www.googleapis.com/youtube/v3/videos?part=statistics&id=ce5KbCTfHoA&key={YOUR_API_KEY}
该特定网址将返回以下信息:
{
"kind": "youtube#videoListResponse",
"etag": "\"jOXstHOM20qemPbHbyzf7ztZ7rI/qRFx1vTFF-k7dkRzNB5rGQ-dqiQ\"",
"pageInfo": {
"totalResults": 1,
"resultsPerPage": 1
},
"items": [
{
"kind": "youtube#video",
"etag": "\"jOXstHOM20qemPbHbyzf7ztZ7rI/2yn7rCfXCu0o-GNVtMEQqYssSpE\"",
"id": "ce5KbCTfHoA",
"statistics": {
"viewCount": "33169",
"likeCount": "281",
"dislikeCount": "3",
"favoriteCount": "0",
"commentCount": "85"
}
}
]
}
我们正在尝试使用 JavaScript 检索该视频的 likeCount 和 dislikeCount。
我们可以通过以下方式使用 PHP 来实现此目的:
function getVideoRatings() {
$JSON = file_get_contents("https://www.googleapis.com/youtube/v3/videos?part=statistics&id={VIDEO_ID}&key={YOUR_API_KEY}");
$json_data = json_decode($JSON, true);
$likes = $json_data['items'][0]['statistics']['likeCount'];
$dislikes = $json_data['items'][0]['statistics']['dislikeCount'];
/* some other code... */
}
这成功解析了google返回的json信息,并返回了视频的喜欢(likeCount)和不喜欢(dislikeCount)。
我们想使用 JavaScript (jQuery) 来完成此操作。谁能帮我解决这个问题吗?
我真的很感谢任何帮助或正确方向的插入。
谢谢
最佳答案
$.getJSON("https://www.googleapis.com/youtube/v3/videos?part=statistics&id=ce5KbCTfHoA&key={YOUR_API_KEY}", function( data ) {
var likes = data['items'][0]['statistics']['likeCount'];
});
这应该有效。使用 jQuery 文档。
关于javascript - 使用 JavaScript 解析此 JSON 数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32597545/