无法浏览Youtube API中为“搜索”提供的示例代码

时间:2015-01-20 00:15:10

标签: youtube-api youtube-javascript-api youtube-data-api

我正在尝试使用Javascript运行“search - youtube data api”的示例代码。我收到以下消息:“此应用程序需要访问您的YouTube帐户。请授权继续。”我得到一个禁用的搜索按钮,文本“猫”也。现在为了解决这个问题,我已经阅读了其他线程,这些线程也说oauth不是必需的,因此也运行了代码,如此线程中所述。 youtube api v3 search by keyword javascript

但即使我做了所有更改,当我点击授权按钮时,代码也不会向前移动,“#”会在我的浏览器的地址栏中附加,这就是我的卡住了。我正在输入客户ID和一切。但代码只是没有前进。任何帮助将非常感谢请!!

编辑 - 这是代码。

<!doctype html>

<html>
<head>
<title>Search</title>

</head>
<body>
  <div id="buttons">
  <label> <input id="query" value='cats' type="text"/><button id="search-button"  onclick="keyWordsearch()">Search</button></label>
  </div>
  <div id="search-container">
  </div>

  <script>
    function keyWordsearch(){
            gapi.client.setApiKey('API key here');
            gapi.client.load('youtube', 'v3', function() {
                    makeRequest();
            });
    }
    function makeRequest() {
            var q = $('#query').val();
            var request = gapi.client.youtube.search.list({
                       q: q,
                    part: 'snippet'                        
            });
            request.execute(function(response) {
                    var str = JSON.stringify(response.result);
                    $('#search-container').html('<pre>' + str + '</pre>');
            });
    }
 </script>

 <script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script>
 <script src="https://apis.google.com/js/client.js?onload=googleApiClientReady"> </script>
</body>
</html>

1 个答案:

答案 0 :(得分:0)

我更正了代码中的一些错误,例如keyWordsearch替换为googleApiClientReady以及一些小错误。我测试了它的代码。不要忘记API KEY。

<!DOCTYPE html>
<html>
    <head>
        <title>Search</title>

    </head>
    <body>
        <div id="buttons">
            <label><input id="query" value='cats' type="text"/><button id="search-button"  onclick="makeRequest()">Search</button></label>
        </div>
        <div id="search-container"></div>

     <script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script>

          <script>
          function makeRequest() {
                var q = $('#query').val();
                var request = gapi.client.youtube.search.list({
                           q: q,
                        part: 'snippet'                        
                });
                request.execute(function(response) {
                        var str = JSON.stringify(response.result);
                        $('#search-container').html('<pre>' + str + '</pre>');
                });
        };
        function googleApiClientReady(){
                gapi.client.setApiKey('YOUR API KEY');
                gapi.client.load('youtube', 'v3', function() {});
        };
     </script>
     <script src="https://apis.google.com/js/client.js?onload=googleApiClientReady"> </script>
    </body>
</html>