在示例 gdata-objectivec-client 中出现“invalid_client”错误
Posted
技术标签:
【中文标题】在示例 gdata-objectivec-client 中出现“invalid_client”错误【英文标题】:getting "invalid_client" error in sample gdata-objectivec-client 【发布时间】:2012-06-18 02:53:12 【问题描述】:嘿,我刚刚从http://code.google.com/p/gdata-objectivec-client/source/checkout 下载并构建了 youtube 示例项目,应用程序构建良好,我已经输入了客户端 ID 和密码。然后,当我使用我的 youtube 帐户登录并单击“允许”按钮时,我收到此错误
Error Domain=com.google.HTTPStatus Code=400 "The operation couldn’t be completed. (com.google.HTTPStatus error 400.)" UserInfo=0x6a03a350 data=<7b0a2020 22657272 6f722220 3a202269 6e76616c 69645f63 6c69656e 74220a7d>, json=<CFBasicHash 0x6a01b6b0 [0xac0251a0]>type = mutable dict, count = 1,
entries =>
2 : <CFString 0x6a01b720 [0xac0251a0]>contents = "error" = <CFString 0x6a054b90 [0xac0251a0]>contents = "invalid_client"
或来自 xcode 日志:
2012-06-15 10:49:30.627 YouTubeSample[976:b03] Error Error Domain=com.google.HTTPStatus Code=400 "The operation couldn’t be completed. (com.google.HTTPStatus error 400.)" UserInfo=0x6980d2c0 data=<7b0a2020 22657272 6f722220 3a202269 6e76616c 69645f63 6c69656e 74220a7d>
Error data:
error = "invalid_client";
我已尝试创建并输入新的客户端 ID 以供使用。 看起来秘密没有正确发送,因为如果我故意破坏它甚至将其留空,我会得到相同的结果。
有什么建议吗?
【问题讨论】:
我如何获得客户端 ID..如果你已经成功完成了 GDATA API,那么请分享你的示例代码。 我有时也有这个错误。然后它在几分钟后神奇地工作。好像是连接问题。到目前为止还没有找到解决方案 【参考方案1】:就我而言,我没有使用正确的项目名称。我正在使用项目别名。使用正确的项目名称后,它解决了我的问题。
【讨论】:
【参考方案2】:我遇到了同样的问题,问题是 Google API 控制台服务部分中的“Google Maps SDK for ios”被禁用。
【讨论】:
【参考方案3】:我有点晚了,但它可能会帮助其他人..
在 Google API 控制台中创建一个新的客户端 ID 并将其设置为“其他”而不是“iOS”。它应该可以工作。
【讨论】:
你说得对!最后一个问题 - 为什么会发生?也许 coz ios clientID 包含有关重定向 URI 的信息?怎么用? 我真的不知道它为什么会起作用 =/。但确实如此。此外,我使用了自己处理重定向的 GTMOAuth 库。我自己从未在 API-Console 中放置任何重定向 URL。 谢谢。我花了大约一个小时来解决这个奇怪的错误。 这很奇怪。它也对我有用。有没有人在已经在应用商店发布的应用上试用过。 现在没用了。开启适用于 iOS 的 Google Maps SDK 对我有帮助。【参考方案4】:客户端 ID 和密码必须由 Google API console 颁发,专门用于已安装的应用程序(不适用于 Web 应用程序。)
【讨论】:
是的,我已经做到了。我们实际上有一个不同的代码示例使用相同的 ID 和密码,所以我认为这不是问题所在。不过,我们希望示例代码能够正常工作,因为我们希望使用示例中实现的可恢复上传功能。但无论我尝试什么,我都无法让这段代码工作。我已经尝试创建新的秘密,它们肯定被设置为“应用程序”而不是网络。看起来秘密只是没有被发送......以上是关于在示例 gdata-objectivec-client 中出现“invalid_client”错误的主要内容,如果未能解决你的问题,请参考以下文章
在 swagger UI 中生成示例示例(在 Spring boot 项目中)