YouTube API集成提示Unauthorized,我的代码存在什么问题?
YouTube API 401未授权问题解决
问题根源及修复步骤
- 认证格式与方式错误:你用
Bearer头传递API密钥是错的——API密钥属于简单认证,应该通过key查询参数传递,而非Authorization头;另外原代码里"Bearer" + api_key缺少Bearer和密钥之间的空格,即便用OAuth令牌也会失效。 - 无效参数干扰:
forDeveloper并非YouTube Search API的合法参数,多余参数可能触发请求异常,必须删除。
修复后的代码
import requests from secret import api_key url = "https://www.googleapis.com/youtube/v3/search" params = { "part": "snippet", "channelId": "UCWv7vMbMWH4-V0ZXdmDpPBA", "maxResults": 49, "order": "title", "q": "python", "key": api_key # 用key参数传递API密钥 } response = requests.get(url, params=params) print(response) # 可打印响应内容进一步排查问题 # print(response.json())
额外检查项
- 确认Google Cloud控制台中,你的API密钥已启用YouTube Data API v3,且无IP限制、调用配额未耗尽。
- 核对API密钥是否复制正确,无多余空格或特殊字符。
内容的提问来源于stack exchange,提问作者Kofoworola GT Kofo
相关产品推荐
相关产品推荐

