我正在开发一个Java应用程序,需要访问用户的个人帐户谷歌数据。该开发目前在我的本地主机上的netbeans中。我正在实现3条腿的OAuth。在发送Grant request时,它会向我发送未经授权的请求令牌,然后重定向到回调URL。
当尝试访问访问令牌时,它给我错误“错误获取HTTP响应”。现在,根据Google Documentation给出的,“如果应用程序没有注册,谷歌将使用匿名网址;如果没有设置,谷歌将使用字符串”oauth_callback“。”这是否意味着我必须在Google Apps引擎上注册我的应用程序,然后才能批准授权和访问请求?请帮帮忙。
参考:OAuth for Web Applications,OAuth in the Google Data Protocol Client Libraries
发布于 2011-02-01 10:02:56
根据你的问题,可能不是注册表给你带来麻烦。听起来您只是没有正确地实现OAuth -并不是说这样做很容易。OAuth流程大致如下:
anonymous。这是一种变通办法;另一种方法是将客户端秘密或RSA私钥嵌入到应用程序本身中,这是一个非常非常糟糕的主意。如果你使用‘匿名’,你绝对应该设置xoauth_displayname参数。(实际上,每个人都应该设置这个参数,但如果您使用的是anonymous.)对于web应用程序,注册几乎总是一个好主意。它使用户更容易管理他们的访问令牌,如果你的应用程序行为不正常,或者如果他们不想让你再拥有访问权限,就可以撤销他们的令牌。如果你不注册,你的应用程序可能会在列表中显示为一个看起来相当可怕的“匿名”。它实际上只安装了你不想注册的应用程序。您可能还想注册一个API key。API密钥将极大地提高您的速率限制,如果您的应用程序开始出现故障,它还将允许Google与您联系。
我可以链接到OAuth文档,但您已经找到了。希望我的解释能有所帮助!
发布于 2011-01-31 15:46:49
如果您在本地机器上进行开发,您将继续获得与上面相同的结果。
对于更多有趣的测试,是的,你必须注册你的应用程序并将其推送到应用程序引擎。
发布于 2011-01-31 15:51:50
Google将检查return-url的域名是否已注册。您还可以修改您的dns/host-file,使其指向您用于本地主机的域名。
https://stackoverflow.com/questions/4848571
复制相似问题