"Insufficient Permission"获取访问令牌后检索用户YouTube下标



我正在编写一个脚本,用于检查用户是否已订阅我的频道。这个想法是获取用户订阅的所有频道,然后检查我的频道ID是否是其中之一。首先,我使用 POST 正确获取访问令牌,它比将这些作为 GET 发送工作正常,但结果是"无法打开流:HTTP 请求失败!HTTP/1.0 403 禁止错误"。文档页: https://developers.google.com/youtube/v3/docs/subscriptions/list#request_url

$data =file_get_contents('https://www.googleapis.com/youtube/v3/subscriptions?part=snippet
&maxResults=50&access_token='.$token.'&mine=true&key=My API Key');
var_export($data);

并粘贴完整的网址

https://www.googleapis.com/youtube/v3/channels?part=snippet&mine=true&access_token={Access_Token}

我明白这个

{
 "error": {
  "errors": [
   {
    "domain": "global",
    "reason": "insufficientPermissions",
    "message": "Insufficient Permission"
  }
  ],
 "code": 403,
 "message": "Insufficient Permission"
 }
}

添加一个 heaer:

授权:不记名 ya29。DwG_A_V6cybZ2KGqRwPMBF02w0sYw9msqSKoCBI53So0zzIHFRKlwEv68C4aI_NdadQ4wKHUrV2pBA

密钥是您的客户 ID

Google 使用 API 密钥限制访问。如果您超过免费限制,他们会向您收费。您需要获取一个Google API密钥并将其添加到URL,如下所示:&key=YOUR_API_KEY

从 Google 的控制台创建 API 密钥(您需要注册并创建项目):https://console.cloud.google.com/apis/credentials

请求的新网址将是:https://www.googleapis.com/youtube/v3/channels?part=snippet&mine=true&access_token={Access_Token}&key=YOUR_API_KEY

我遇到了这个错误,当我发现我需要将 Youtube 范围添加到我的 OAuth 登录请求中时,我解决了它:"https://www.googleapis.com/auth/youtube"

最新更新