在 JS 中以*阻止* 的方式使用 YouTube API

对于我正在进行的一个副项目,为了学习更多的 JS,我正在尝试使用 YouTube API 示例,试图了解它们是如何工作的。

在 Google 自己的用于获取给定 YT 频道的播放列表的文档中,我们有以下异步代码:

 var channelPlalists = null; 
 function getchannelPlayLists() {
   return gapi.client.youtube.playlists.list({
      "part": [
          "id"
      ],"channelId": "UCe3hdN-kzmG97aR3I3xbyJQ","maxResults": 50
   })
   .then(function(response) {
     channelPlaylists = response;
   },function(err) { console.error("Execute error",err); });
}

就我而言,我想了解如何将其转换为同步请求,这意味着我希望线程被阻塞,直到响应尚未到达。

我该怎么做?

我看到你可以把上面的函数分解成这两部分:

var request = gapi.client.youtube.playlists.list({
  "part": [
    "id"
  ],"maxResults": 50
})

request.execute(function(response) {
  console.log(response); 
}

然而这无济于事,因为现在 execute() 方法以非阻塞方式工作。

我也有点怀疑我正在尝试做的事情是否完全可行,因为 YouTube API 本来可以按照设计以非阻塞方式编写,因此这可能是使用它的唯一方法。 ..但这只是我的自由猜测。

最后我知道这与人们通常问的相反(如何使您的代码非阻塞)但有时这就是我学习东西的方式...... :)

hexar 回答:在 JS 中以*阻止* 的方式使用 YouTube API

暂时没有好的解决方案,如果你有好的解决方案,请发邮件至:iooj@foxmail.com
本文链接:https://www.f2er.com/15197.html

大家都在问