更新1:随着我的深入研究,这与Rails无关,更多的是关于当我们调用的API不支持服务模型时,如何让服务器使用Google提供的凭据访问我们的帐户的问题
我有一个服务器应用程序,需要从Rails连接到Google API。我可以使用googleapi ruby客户端gem成功地通过OAuth2进行身份验证,并使其他api正常工作。有几个示例使用gem,但大多数都假设您希望用户在web环境中对自己进行身份验证。其他人则支持谷歌所谓的"服务模型",即真正的应用程序自我验证。我也在工作。
然而,我查询的具体API是谷歌联盟网络(GAN),它不支持服务帐户模型。特别是,我需要一个能够在没有任何用户交互的情况下使用OAuth2进行身份验证的服务器。我已经在其他几种情况下使用OAuth完成了这项工作,但在这种情况下,我很难让它发挥作用。
有人知道为GAN工作Rails代码吗?
更新2:我正在API授权上搜索这个谷歌文档,寻找不需要用户交互的策略。
我找到了一个可行的解决方案——它使用谷歌的"已安装的应用程序"方法,需要一点手动设置,但在其他方面是一个有效的解决方案。
https://gist.github.com/3543368