我正在编写一个脚本,用于检查用户是否已订阅我的频道。这个想法是获取用户订阅的所有频道,然后检查我的频道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"