API

2017-11-27 19 views
0
を使用してGoogleドライブの動画埋め込みコードを取得する

みなさん、こんにちは、API

私は、Webページ上のドライブ私のGoogleからの特別映像を表示するために必要なプロジェクトに取り組んでいました。手動で動画を選択して埋め込みコードをコピーしたくない場合は、google api(PHPが優先)を使用して動画の埋め込みコードを取得する方法はありますか?

このコードをiframe内で使用して動画を表示することができます。

他の方法があるかどうかをご提案ください。

事前のおかげで、

答えて

0

GoogleドライブのAPI https://developers.google.com/drive/v3/web/quickstart/phpと私はあなたを助けることを願って、コードのこのセグメントで開始することができます。 $service->files->listFiles($optParams)から返さ

<?php 
// New Google Client, see all settings at link in description 
$client = new Google_Client(); 

// New Google Drive Service 
$service = new Google_Service_Drive($client); 

// Params with filter of MIME type for search only videos mp4 (you can change this) 
$optParams = [ 
    'q' => "mimeType='video/mp4'", 
    'pageSize' => 10, 
    'fields' => 'nextPageToken, files(id, name, webViewLink)' 
]; 

// Get files from our request 
$files = $service->files->listFiles($optParams); 

// Print an iframe for each video 
foreach($files->files as $file){ 
    // Now I need to make a little detail about the next lines of code so look at [Info] 
    $src = str_replace('/view', '/preview', $file->webViewLink); 
    echo '<iframe width="500" height="200" target="_parent" src="'. $src .'"></iframe>' 
} 
?> 

[詳細]

オブジェクトがGoogle_Service_Drive_DriveFileオブジェクトであり、これらの各々は、一連のプロパティを有します。 Google APIのv3からembedLinkという名前のプロパティが削除され、v2(Migrate to Google Drive API v3)からこのプロパティの代替がありません。私のコードで見たように、このようなファイルのビューにURLを返すwebViewLinkプロパティを使用します:

https://drive.google.com/file/d/123456789/view 

しかし、あなたはあなたに内のエラーをブラウザの通知を、このURLを使用する場合:

Refused to display 'https://drive.google.com/file/d/123456789/view' in a frame because it set 'X-Frame-Options' to 'sameorigin'.` 

私はこの問題について、あなたはあまり持っていないよ、これについてlot of questionがあります。だから我々は、ファイルのプレビューではなくビューを要求する必要がAN私は要求によって返されたURLに

str_replace('/view', '/preview', $file->webViewLink);

でそれを行います。今すぐこのURLを使用することができます

+0

答えてくれてありがとうございます@alvarofvr、それは本当に把握するために多くの手助けをしました。私のコードは、これとは少し違って、$ファイルからすべての応答を出力することができました。そして、驚きの埋め込みリンクが、私が正確に必要とした結果の1つでした。 –