헬무트 란다는 관심있는 사람들을 위해, 여기에 최근 문서 그래서 워드 프로세서 그의 링크, 아주 오래된 것을 언급 :이 API를 사용하는 경우
http://blog.martinlegris.com/2010/05/28/sample-code-using-the-youtube-as3-api-with-the-youtube-player-api/
또 한가지주의해야 할,있는 그대로 그 Google은 2016 년 1 월에 Flash에서 검색 및 퍼가기를 공식적으로 중단했으며 개발자는 i-Frame에서 API를 사용하여 동영상을 검색하고 재생할 것을지지합니다.
https://developers.google.com/youtube/iframe_api_reference
인용구 :
iframe을 플레이어 API는 당신이 당신의 웹 사이트에 YouTube 동영상 플레이어를 내장하고 자바 스크립트를 사용하여 플레이어를 제어 할 수 있습니다. 플래시 및 자바 스크립트 플레이어 API와 달리 플래시 객체를 웹 페이지에 삽입하는 것과 관련하여 IFrame API는 콘텐츠를 페이지의 태그에 게시합니다.이 Flash 응용 프로그램이 더 나은 경우 작동한다면,
그러나 플래시를 지원하지 않는 모바일 기기에 플래시 플레이어보다는 를 HTML5 버전의 플레이어를 제공하기 위해 유튜브를 수 있기 때문에이 방법은 이전 가능한 API보다 더 많은 유연성을 제공 Flash 내에서 i-Frame보다 플레이어 API는 실제로 차단 날짜를 지나서 작동하며 URLRequest를 수행하고 As3에서 결과를 구문 분석하면 Flash 내에서 검색이 작동합니다. 내 예는 다음과 같습니다이 예에서
package {
import flash.display.*;
import flash.events.*;
import flash.display.MovieClip;
import flash.display.Stage;
import flash.media.Sound;
import flash.net.URLRequest;
import flash.system.Security;
import flash.system.LoaderContext;
import flash.system.ApplicationDomain;
import flash.system.SecurityDomain;
import flash.events.KeyboardEvent;
import flash.external.ExternalInterface;
import flash.net.URLRequest;
import flash.net.navigateToURL;
import flash.net.URLLoader;
import flash.net.URLRequestHeader;
import flash.net.URLRequestMethod;
import flash.events.*;
public class theaterYouTube3 extends MovieClip {
public var pRoot:MovieClip = null;
private var pSearchDataResultArray:Array = [];
private var pSearchKey:String = "PutYourSearchKeyHere";
private var pMaxSearchResults:int = 20;
public function theaterYouTube3():void {
traceOut("init");
//date, rating, relevance, viewCount
doYouTubeSearchSearch("trailers", "rating", pMaxSearchResults);
}
//
private function doYouTubeSearchSearch(searchTerm:String, searchOrder:String, maxResults:int) {
var request:URLRequest=new URLRequest();
//request.url = "https://www.googleapis.com/youtube/v3/search?safeSearch=strict&part=snippet&q=" + searchTerm+ "&maxResults="+maxResults+"&key="+pSearchKey;
request.url = "https://www.googleapis.com/youtube/v3/search?safeSearch=strict&type=video&part=snippet&q=" + searchTerm+ "&order=" + searchOrder+"&maxResults="+maxResults+"&key="+pSearchKey
request.requestHeaders = [new URLRequestHeader("Content-Type","application/json")];
request.method = URLRequestMethod.GET;
var loader:URLLoader=new URLLoader();
loader.addEventListener(Event.COMPLETE, searchDataRecieved);
//loader.addEventListener(SecurityErrorEvent.SECURITY_ERROR, notAllowed);
//loader.addEventListener(IOErrorEvent.IO_ERROR, notFound);
loader.load(request);
}
//
private function searchDataRecieved(event:Event):void{
trace("search data received");
var vidsData:String = event.target.data;
parseVideoSearchData(vidsData);
}
//
private function parseVideoSearchData(vidsDataString:String){
pSearchDataResultArray = [];
var tempArray:Array = vidsDataString.split('"items":');
if (tempArray.length ==0){
parseVideoSearchDataError("no data");
}
vidsDataString = tempArray[1];
vidsDataString=vidsDataString.split("{\n").join("");
vidsDataString=vidsDataString.split("\n}").join("");
vidsDataString=vidsDataString.split("\n}").join("");
vidsDataString=vidsDataString.split("},\n").join("");
vidsDataString=vidsDataString.split("}\n").join("");
//trace(vidsDataString);
tempArray = vidsDataString.split('"kind": "youtube#searchResult"');
for (var i = 1; i< tempArray.length; i++){
var resultString:String = tempArray[i];
var vid_Id:String = extractVideoId(resultString);
var vid_title:String = extractVideoTitle(resultString);
var vid_thumb:String = "https://i.ytimg.com/vi/" + vid_Id + "/mqdefault.jpg";
var dataSet:Array = [vid_Id, vid_title, vid_thumb];
pSearchDataResultArray.push(dataSet);
traceOut("dataSet = \r" + dataSet + "\r");
}
}
//
private function extractVideoId(sourceString:String):String{
//trace(sourceString);
var parseArray1:Array = sourceString.split('"videoId":');
var split1:String = parseArray1[1];
var parseArray2:Array = split1.split('"');
var itemValue:String = parseArray2[1];
return (itemValue);
}
//
private function extractVideoTitle(sourceString:String):String{
var parseArray1:Array = sourceString.split('"title":');
var split1:String = parseArray1[1];
var parseArray2:Array = split1.split(",");
var itemValue:String = parseArray2[0];
return (itemValue);
}
//
private function parseVideoSearchDataError (error:String):void{
trace("parseVideoSearchDataError = " + error);
}
//
private function traceOut(txt):void {
trace("THEATER: " + txt);
//traceLogin(txt);
}
}
}
, 하나는 부를 것이다 :
doYouTubeSearchSearch를 ("트레일러", "등급", pMaxSearchResults);
등급에 따라 예고편을 검색하는 YouTube 동영상을 검색합니다.
나중에 알고 있습니다 ... 조금 오래되었습니다 .... 나를 찔러 주셔서 감사합니다 ..... + 1 – FlyingCat