Google App Engine Tic Tac Toe Java示例OAUTH失败

时间:2013-12-03 20:45:25

标签: java google-app-engine oauth

我正在努力学习使用Google App Engine并且没有太多运气。

有没有人获得Google App Engine(Java版)的Tic Tac Toe示例? 我一直试图让这个例子起作用 -    developers.google.com/appengine/docs/java/endpoints/

这是它的代码 -

`github.com/GoogleCloudPlatform/appengine-endpoints-tictactoe-java`

虽然我可以启动并运行该应用程序,但我无法将OAUTH部分用于工作/身份验证。

第二个,较小的问题是我正在尝试使用它的Web客户端部分,但除非通过api explorer运行,否则它无法从浏览器中找到该应用程序。 如果我将它包装在 - ../_ah/api/explorer中, 我可以让它进行未经授权的调用(getmove()),但任何其他方法都不起作用。

需要oauth的功能失败了。

我甚至在应用的权限中列出了我的google plus电子邮件。 我甚至会登录到Google Plus并且OAUTH失败。

我更改了自述文件所在的客户端ID。

我收到以下回复。

401未经授权

  • 显示标题 -

    { “错误”:{ “message”:“com.google.appengine.api.oauth.OAuthRequestException:用户无效。”, “代码”:401, “错误”:[ { “域名”:“全球”, “理由”:“必需”, “message”:“com.google.appengine.api.oauth.OAuthRequestException:无效的用户。” } ] } }

这已经花了太长时间。任何帮助都会有用。

感谢。

2 个答案:

答案 0 :(得分:1)

OAUTH2失败的原因是您尚未填写“同意屏幕”选项。转到您的云仪表板,然后“API& auth” - > “同意屏幕”。填写产品名称和电子邮件。这需要大约一分钟的时间。之后,OAUTH2应该可以工作。

参考:https://stackoverflow.com/a/18951654/1639019

答案 1 :(得分:0)

不确定您是否遇到了同样的问题,但是在使用开发者控制台生成clientid后,有两个地方需要更改clientid。一个位置位于常量内部或传递到java运行时服务器(开发或部署)中的变量,另一个位于位于webapp / js文件夹中的名为base.js(在我的hello端点示例中)的文件中。您必须通过开发人员控制台配置所有内容才能使oauth2重定向正常工作。

希望这有帮助。