【问题标题】:Using YouTube API on HTML page with Javascript使用 Javascript 在 HTML 页面上使用 YouTube API
【发布时间】:2015-07-04 12:24:08
【问题描述】:

我是网络开发的新手,我正在尝试制作一个非常简单的搜索页面,该页面使用 YouTube API 显示 YouTube 视频。我一直在关注这里的例子:https://developers.google.com/youtube/v3/code_samples/javascript?hl=fr#search_by_keyword 但我运气不好。我没有错误,但也没有搜索结果。

我当前的代码在这里:http://amalthea5.github.io/thinkful-tube/

【问题讨论】:

    标签: javascript api youtube


    【解决方案1】:

    似乎有几个问题。 你需要使用

    <script src="https://apis.google.com/js/client.js?onload=googleApiClientReady"></script>
    

    而不是

    <script src="https://apis.google.com/js/client.js?onload=onClientLoad" type="text/javascript"></script>
    

    因为你需要确保auth.js中的初始化函数googleApiClientReady()被调用。

    但是,Google API 也报告不存在 ID 为 trusty-sentinel-92304 的 OAuth 客户端。

    编辑:

    如果没有 OAuth 客户端 ID,而是 API 密钥,则根本不应该使用 auth API。相反,您需要将 API 密钥作为参数添加到每个 API 调用(如下所述:https://developers.google.com/youtube/v3/docs/standard_parameters)。

    试试这个作为开始:

    gapi.client.load('youtube', 'v3', function() {
      var request = gapi.client.youtube.search.list({
        key: "YOUR_API_KEY",
        q: "cats",
        part: 'snippet'
      });
    
      request.execute(function(response) {
        var str = JSON.stringify(response.result);
        console.log(str);
      });
    });
    

    【讨论】:

    • 好的,我按照您的说明更改了脚本。我查看了客户 ID。我最初尝试使用从 Google Developers Console 获得的 API 密钥来执行此操作,这与 OAuth 客户端不同。我没有 OAuth 客户端 ID,只有项目 ID。那么我将如何使用我的 API 密钥来解决这个问题呢?非常感谢您帮助这个无知的菜鸟。
    • 您也可以使用gapi.client.setApiKey() 来指定您的 API 密钥,因此您不需要将其作为参数包含在每个查询中。
    【解决方案2】:

    首先,如果您再次阅读您正在遵循的教程,它会说:

    同样,您需要更新 auth.js 文件中的客户端 ID 才能运行此代码。

    看起来你没有,

    同样通过从控制台运行搜索查询,我得到以下错误:

    TypeError:gapi.client.youtube 未定义

    表示 api 未启动,您应该仔细检查嵌入 google javascript 文件的方式以及这样做的优先级(它们的顺序)

    【讨论】:

      猜你喜欢
      • 2014-10-21
      • 1970-01-01
      • 1970-01-01
      • 2011-05-14
      • 2013-01-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-12-09
      相关资源
      最近更新 更多