我在 Google Apps 脚本中使用了 YouTube 报告 API。尽管没有代码更改,但 Forbidden 现在在 1 月 12 日抛出。
参考谷歌的文档,我写了以下代码。
var myChannels = YouTube.Channels.list('id', {mine: true});
var channel = myChannels.items[0];
var today = new Date();
var todayFormatted = Utilities.formatDate(today, 'JST', 'yyyy-MM-dd');
var videoId = "MY_VIDEO_ID";
try {
var results = YouTubeAnalytics.Reports.query(
'channel==' + channel.id,
todayFormatted,
todayFormatted,
'views',
{
dimensions: 'day',
sort: '-day',
filters:'video==' + videoId
});
} catch (e) {
Logger.log(e) //Exception: Forbidden
}
OAuth 身份验证、YouTube Analytics API 已在 Google Developer Console 和 Advanced Google Services 中启用。
我认为我的帐户有问题,但其他帐户也有同样的问题。奇怪的是,它会在 APIs Explorer 中正常工作。
也许,这与下面的帖子相同。
原因,我相信因为不包含OAUTH2 SCOPES的“yt-analytics.readonly” 。
事实上,它已被 yt-analytics.readonly 包含在 OAUTH2 SCOPES 中的 APIs Explorer 中。所以,它可以成功运行。也许,甚至在 1 月 12 日之前。然而,尽管在此脚本中使用了 youtube 分析 api,但它不包含 yt-analytics.readonly。
为什么会出现这样的问题?