我需要有关 YouTube API 的帮助。我想我必须使用service account
,因为我需要超过 10 个用户使用同一个帐户。我不确定为什么我会收到播放列表请求的空项目列表。我应该在@developer.gserviceaccount.com 和我的电子邮件之间建立一些联系吗?我尝试将其添加为备用电子邮件,但它已与另一个 Google 帐户相关联。
这是我使用的代码:
const CLIENT_ID = 'xx.apps.googleusercontent.com';
const SERVICE_ACCOUNT_NAME = 'xx@developer.gserviceaccount.com';
const KEY_FILE = 'xx-privatekey.p12';
$client = new Google_Client();
$key = file_get_contents(__DIR__."/../../components/google-api-php-client/src/".KEY_FILE );
$client->setClientId(CLIENT_ID);
$client->setAssertionCredentials(new Google_AssertionCredentials(
SERVICE_ACCOUNT_NAME,
array('https://www.googleapis.com/auth/youtube'),
$key)
);
$youtube = new Google_YoutubeService($client);
$playlistItemsResponse = $youtube->playlists->listPlaylists('snippet',array('mine'=>true));
var_dump($playlistItemsResponse);
这是回应:
array (size=4)
'kind' => string 'youtube#playlistListResponse' (length=28)
'etag' => string '"8TOPSm5ek9Nh6woLJrPMROQl6rM/GERGKSwb6YJY5lZXdcTaZAMM1WU"' (length=57)
'pageInfo' =>
array (size=2)
'totalResults' => int 0
'resultsPerPage' => int 5
'items' =>
array (size=0)
empty