Поскольку API YouTube Analytics (v1) устарело с 1 ноября 2018 года, я пытался перенести его на v2.
Я скачал форму обновления по следующей ссылке: https://github.com/googleapis/google-api-php-client-services
и документация по миграции выглядит следующим образом: введите здесь описание ссылки
Ниже приведен код:
$youtubeAnalytics = new Google_Service_YouTubeAnalytics($client);
$channel = "channel==" . $channelId;
$metrics = 'views,redViews,comments,likes,dislikes,videosAddedToPlaylists,videosRemovedFromPlaylists,shares,estimatedMinutesWatched,estimatedRedMinutesWatched,averageViewDuration,averageViewPercentage,annotationClickThroughRate,annotationCloseRate,annotationImpressions,annotationClickableImpressions,annotationClosableImpressions,annotationClicks,annotationCloses,cardClickRate,cardTeaserClickRate,cardImpressions,cardTeaserImpressions,cardClicks,cardTeaserClicks,subscribersGained,subscribersLost';
$optParams = array('dimensions' => 'day'
// to fetch daily analytics
);
$startDate = date('Y-m-d');
// for first crawl
$endDate = date("Y-m-d", strtotime('-90 days'));
if ($user['last_used'] != '') {
$endDate = date("Y-m-d", strtotime('-10 days')); // if not the first crawl
}
// fetching the daily channel analytics : Youtbe Analytics API
$api = $youtubeAnalytics->reports->query($channel, $endDate, $startDate, $metrics, $optParams);
$ api, возврат пустым.
Я изменил функцию request.query, чтобы применить изменения во всей системе.Путь: google / apiclient-services / src / Google / Service / YoutubeAnalytics / Resources / Reports.php
public function query($ids, $startDate, $endDate, $metrics, $optParams = array())
{
$params = array('ids' => $ids, 'startDate' => $startDate, 'endDate' => $endDate, 'metrics' => $metrics);
$params = array_merge($params, $optParams);
return $this->call('query', array($params), "Google_Service_YouTubeAnalytics_QueryResponse");
}
Я не получил ответ здесь: Path: google> apiclient / src / Google/Service/Resource.php
$request = new Request(
$method['httpMethod'],
$url,
['content-type' => 'application/json'],
$postBody ? json_encode($postBody) : ''
);
Я извиняюсь, если вопрос кажется некорректным.Я впервые работаю с API YouTube.Пожалуйста, помогите.