【发布时间】:2017-07-12 06:19:12
【问题描述】:
我一直在使用 OAuth 方法在 YouTube 上上传、更新和删除视频。这一切一直运行良好,直到大约 2 月 12 日,所有这些进程都停止工作。现在,当我删除 YouTube 视频时,出现以下错误:
"code": 403,
"message": "The video that you are trying to delete cannot be deleted. The request might not be properly authorized."
我知道 OAuth 进程正在运行,因为我可以获取令牌并在令牌过期时刷新令牌。我正在使用 Google 提供的最新 PHP 库(使用 composer 安装)。我可以通过拨打以下电话获取有关有效 YouTube 视频的信息:
$videoId = "xxxxxxx"; //id of video on YouTube
$youtube->videos->listVideos("snippet", array('id' => $videoId));
但随后删除调用给出了上述错误。
$youtube->videos->delete($videoId);
由于 listVideos 有效,因此可以确认 client_id、密钥和令牌是正确的。我还将范围设置为以下
$client->setScopes(array('https://www.googleapis.com/auth/youtube',
'https://www.googleapis.com/auth/youtube.upload',
'https://www.googleapis.com/auth/youtubepartner'));
我还检查了 Google API 中设置的凭据和配额是否正常。我认为可能已经达到配额,但似乎并非如此。我确实在 2 月初看到了来自 YouTube 的一封电子邮件,说他们有新的服务条款和开发者政策。我查看了所有内容,但似乎没有任何内容表明我遇到的问题?
不确定还可以尝试什么?
【问题讨论】:
-
您是否尝试重新验证您的代码?听起来刷新令牌可能很糟糕,您需要一个新令牌。如果您是 youtube 合作伙伴,您应该联系他们,我相信他们会很乐意提供帮助。
-
谢谢!问题似乎确实是刷新令牌不再有效。我创建了一个新项目,重新进行了身份验证,希望刷新令牌能持续更长时间。
标签: google-api oauth-2.0 youtube-api google-oauth