YouTube Data API v3获取ACCESS_TOKEN遇400错误:redirect_uri_mismatch排查
解决YouTube Data API v3获取Access Token时的
redirect_uri_mismatch错误 redirect_uri_mismatch错误的核心原因很明确:你用来交换Access Token的POST请求里的redirect_uri参数,和Google Cloud Console中你的OAuth 2.0客户端ID配置的重定向URI不匹配。
以下是具体的排查和修复步骤:
核对POST请求的
redirect_uri参数
确保你向https://oauth2.googleapis.com/token发送POST请求时携带的redirect_uri,和你当初获取授权码(也就是你提供的[[CODE]])时使用的redirect_uri完全一致。这里的匹配要求非常严格,包括协议(http/https)、域名、端口、路径,甚至大小写都不能出错。比如用http://localhost:8080/callback拿到的授权码,绝不能用https://localhost:8080/callback去换Token。检查Google Cloud Console的重定向URI配置
登录Google Cloud Console,找到你的项目,进入「API和服务」→「凭据」页面,定位到你使用的客户端ID(即[[CLIENT_ID]])并点击编辑。在「授权重定向URI」列表里,确认是否包含你刚才核对的那个redirect_uri:- 如果没有,添加该URI并保存配置;
- 如果已经存在,仔细检查是否有拼写错误、协议不一致、路径多/少斜杠这类细微差异。
注意特殊场景的坑
- 本地测试用
localhost时,端口号必须完全对应;生产环境要使用已在Google验证过的域名; - 授权码是一次性的,如果之前用错误的redirect_uri获取过授权码,这个码已经失效,需要重新生成新的授权码再尝试交换Token。
- 本地测试用
内容的提问来源于stack exchange,提问作者Mikhail Eliseev
相关产品推荐
相关产品推荐

