使用JavaScript解析此JSON数据

Parsing this JSON data with JavaScript

本文关键字:JSON 数据 JavaScript 使用      更新时间:2023-09-26

我们有一个工作的PHP函数,可以使用YouTube API v3获取特定的YouTube视频信息。

我们正在尝试使用JavaScript(jQuery(来做同样的事情。问题是,使用我们的PHP函数会导致页面在检索数据时加载非常缓慢。我们希望使用JavaScript可以让我们的页面在收到来自YouTube的数据请求之前(或期间(加载。

首先,这是我们的一个视频的示例url(您需要一个API密钥来查看自己返回的信息(:

https://www.googleapis.com/youtube/v3/videos?part=statistics&id=ce5KbCTfHoA&key={YOUR_API_KEY}

该特定url将返回以下信息:

{
 "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... */
}

这成功地解析了谷歌返回的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文档。