>我正在尝试将Google Data API集成到我的应用程序中。我正在使用此处提供的 ObjC 包装器:
http://code.google.com/p/gdata-objectivec-client
但我在身份验证方面遇到了一些问题。基本上,我正在按照此处描述的步骤进行操作:
http://code.google.com/p/gtm-oauth2/wiki/Introduction#Signing_In_to_Google_Services
我在 API 控制台上创建了一个项目,并为已安装的应用程序添加了两个客户端 ID:一个是"其他"平台,另一个是"iOS",并适当设置了捆绑 ID(尽管我暂时将应用商店 ID 保留为 0)。现在有趣的部分来了。
与上述包装库捆绑的 YouTubeSample 应用程序和我的 iOS 应用程序都可以与属于"其他"平台的客户端 ID 完美配合,当我切换 iOS 的 ID 时,它们都返回 400 invalid_client
错误。我已经仔细检查了客户端 ID 和机密,都是正确的。当然,iOS应用程序已获得正确的捆绑ID。
那么,我在这里错过了一些琐碎的东西吗?
是否有理由需要使用 iOS 类型的 id/secret 对而不是其他类型的对?也许我错过了一些东西,但链接的文档指出不使用 iOS 类型的客户端 ID:
在控制台,创建一个项目,然后单击左列的"API 访问"。为已安装的应用程序(不是 Web 应用程序)创建新的客户端 ID,键入其他(不是 iOS)。这将提供要与控制器一起使用的客户端 ID 和机密字符串。
控制器在发送请求时可能不会将自己标识为 iOS 应用程序,Google 可能会在收到 iOS id/密钥对时进行检查。