как я могу заменить доступ OAuth2 к общедоступному ключу доступа API в Youtube API v3? Должен ли я использовать функцию setDeveloperKey? Если я сделаю так, как показано ниже, он вернется:
Доступ не настроен. Пожалуйста, используйте Google Developers Console, чтобы активировать API для своего проекта.
Я установил свой Public Access API в консоли Google, так что все должно быть в порядке.
Когда я пытаюсь получить доступ через OAuth, он работает отлично.
CORRECTED CODE:
// Call set_include_path() as needed to point to your client library.
require_once 'Google/Client.php';
require_once 'Google/Service/YouTube.php';
session_start();
$API_KEY = 'AIzaSyB7HuVrtyiUV8ow1SegS6xxxxxxxxx';
$client = new Google_Client();
$client->setDeveloperKey($API_KEY);
$client->setScopes('https://www.googleapis.com/auth/youtube');
$redirect = filter_var('http://' . $_SERVER['HTTP_HOST'] . $_SERVER['PHP_SELF'],
FILTER_SANITIZE_URL);
$client->setRedirectUri($redirect);
// Define an object that will be used to make all API requests.
$youtube = new Google_Service_YouTube($client);
// Call the channels.list method to retrieve information about the
// currently authenticated user's channel.
$channelsResponse = $youtube->channels->listChannels('contentDetails', array(
'id' => 'UUJQ2_kh7m7muj2xxxx',
));
$htmlBody = '';
$playlistItemsResponse = $youtube->playlistItems->listPlaylistItems('snippet', array(
'playlistId' => => 'UUJQ2_kh7m7muj2xxxx',
'maxResults' => 50
));
$htmlBody .= "";
foreach ($playlistItemsResponse['items'] as $playlistItem) {
$title = $playlistItem['snippet']['title'];
$video_id = $playlistItem['snippet']['resourceId']['videoId'];
$htmlBody .= "<a href='https://www.youtube.com/watch?v=".$video_id."'>";
$htmlBody .= "<img src='http://img.youtube.com/vi/".$video_id."/1.jpg'>".$title."</a></br>";
}
$htmlBody .= '</ul>';
?>
<!doctype html>
<meta charset="utf-8">
<html>
<head>
<title>My Uploads</title>
</head>
<body>
<?=$htmlBody?>
</body>
</html>
ОШИБКА ПРИ ПОЛУЧЕНИИ:
"domain": "usageLimits", "reason": "accessNotConfigured", "message": "Доступ не настроен. Используйте Google Developers Console, чтобы активировать API для вашего проекта". }], «code»: 403, «message»: «Доступ не настроен. Используйте Google Developers Console, чтобы активировать API для вашего проекта».