2014-08-27 1 views
-2

에 유튜브 API를 사용하려고하면 내 코드입니다 :다음은 HTML 페이지

<!DOCTYPE html> 

<html lang="en" > 
<head> 
<script type="text/javascript"> 

    function showResponse(response){ 
     var responseString = JSON.stringify(response, '', 2); 
     document.getElementById('response').innerHTML += responseString; 
    } 

    function onClientLoad(){ 
     gapi.client.load('youtube','v3', onYouTubeApiLoad); 
    } 

    function onYouTubeApiLoad(){ 
     gapi.client.setApiKey('MyActualKey'); 

     search(); 
    } 

    function search(){ 
     var request = gapi.client.youtube.search.list({ 
      part: 'snippet' 
     }); 

     request.execute(onSearchResponse); 
    } 

    function onSearchResponse(response){ 
     showResponse(response); 
    } 

</script> 
<title></title> 
<script src="https://apis.google.com/js/client.js?onload=onClientLoad"></script> 
</head> 
<body> 
    <div id="response"></div> 
</body> 
</html> 

이 코드는 Codecademy에서에서, 그리고 내가 HTML 페이지에서 사용할 수 있으며 작동 거라 생각 했어요. Google에서 API 키를 가져 왔고 내 Youtube 데이터 api v3 설정을 내 Google 개발자 콘솔에서 사용하도록 설정했지만이 코드는 빈 페이지를 제공합니다. 내가 뭘 잘못하고 있니?

+0

신체에 아무 것도 없으므로? – Xanco

+0

몸에 코드를 포함해야합니다. 그렇지 않으면 아무 것도 표시되지 않습니다. – Devin

답변

0

코덱스 아카데미가 당연한 것으로 여겨졌지만 앱 외부의 서버에 배치 할 때 필수적인 코드 스 니펫이 누락되었습니다. 우선, google에서 실제로 gapi 라이브러리를로드하는 라인이 필요합니다. 한마디로

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

, 이것은 구글의 서버에서 라이브러리를 얻을 것이다, 그리고 그것은 장전 할 때 라이브러리는 자동으로 응용 프로그램을 발로, 당신의 onClientLoad 메소드를 호출합니다 : 당신은 그냥 닫는 전에 코드에서이 넣을 수 있습니다.

다음으로 API 키가 있다고 가정합니다. 이와

gapi.client.setApiKey('MyKey'); 

: 당신이 교체하여 코드에 해당 키를 넣어 확인 덧글이 언급 한 바와 같이 마지막으로

gapi.client.setApiKey('{WHATEVER_YOUR_ACTUAL_KEY IS'); 

, 당신의 몸은 당신의 코드가 showResponse 방법을 실행 그렇게 할 때, 비어 돌아 오는 것을 넣을 곳이 없습니다. 추가 :

<div id="response"></div> 
+0

여전히 작동하지 않습니다. 실제로 키가 있으며 올바른 위치에 놓았습니다. 여기에 표시하고 싶지 않았고, 단지 누락되었습니다. 스크립트 및 div하지만 어떤 이유로 그것은 여전히 ​​작동하지 않습니다. 내 코드가 어떻게 표시되는지 업데이트했습니다. – Dan