我想查看YouTube收入报告。
我正在使用query_report
YouTubeAnalytics API的方法。
http://www.rubydoc.info/github/google/google-api-ruby-client/Google/Apis/YoutubeAnalyticsV1/YouTubeAnalyticsService#query_report-instance_method
以下代码没有问题。
youtube_analytics.client.query_report(
'channel==MINE',
start_date.to_s,
end_date.to_s,
'views'
)
但以下代码返回 401(身份验证失败)
youtube_analytics.client.query_report(
'channel==MINE',
start_date.to_s,
end_date.to_s,
'earnings'
)
我的全能身份验证设置如下。
provider :google_oauth2,
Rails.application.secrets.google['client_id'],
Rails.application.secrets.google['client_secret'],
{ path_prefix: '/auth/youtube',
scope: 'email,profile,youtube.readonly,youtubepartner,yt-analytics.readonly,yt-analytics-monetary.readonly',
prompt: 'consent select_account',
}
范围有yt-analytics-monetary.readonly
,所以我认为它不应该返回 401 错误。
我的代码有问题吗?
谢谢。
检查您正在使用的访问令牌,可能是问题而不是范围。收到 401 错误时,它不仅链接到范围,还可能是因为其他因素,如过期或伪造的访问令牌,或者也可能由于其他原因而无效。请参阅 OAuth 2.0 流程。