1

我是 Google+ 登录的新手,正在尝试构建一个实现此功能的应用程序。

所以我在https://developers.google.com/+/photohunt/java上查找示例教程并尝试遵循它。但是,当我将此应用程序部署到 App Engine 或在我的 localhost:8888 上运行它时,Google+ 登录按钮不显示。我不能用这个应用程序做任何事情。

你们中有人遇到过这个问题吗?我附上了我在部署此应用程序时看到的屏幕截图。

截屏

“邀请您的朋友”按钮也不起作用。我注意到在 index.html 的内部标记中,它没有像其他 angularjs 应用程序那样具有“ng-app”属性。我也是 angularjs 的新手,所以我不知道这是否是问题所在。似乎没有调用 angularjs 方法之类的。

任何建议都会有所帮助!

4

3 回答 3

1

对于 Angular JS,安装Angular JS batarang会很有帮助。就未呈现的登录按钮而言,这可能是由很多事情引起的。

您应该尝试的几件事:

  • 您可以尝试断开应用与https://plus.google.com/apps的连接,然后重新登录
  • 检查您在Google API 控制台中的授权来源是否正确。请注意,http 与 https 有所不同。当您从在 AppEngine 上运行切换时,这可能特别容易错过,因为它很容易同时支持这两者。
  • 在浏览器中打开 javascript 控制台,看看是否有任何错误,这可能会引导您找到解决方案。
  • 从Chrome 开发者工具的网络部分观察网络流量,这也可能会导致更多关于失败的信息
  • 通过查看您的页面源代码并检查源代码中的链接(尤其是 client|plus.js)来验证所有脚本是否正在加载。
  • 验证 Google 客户端是否正常工作,您可以在控制台中输入以下命令:

    gapi.client.load('plus','v1');
    

如果这些解决方案都没有帮助或让您朝着正确的方向前进,您可能需要考虑重新下载示例,因为您的 PhotoHunt 文件夹可能发生了一些事情。

另外,你在哪个浏览器上尝试这个?

于 2013-04-15T14:23:21.463 回答
0

文档

未登录的访问者会看到页面右上角的 Google+ 登录按钮。

您是否使用您的谷歌帐户登录?

这是HTML:

<span id="signin" ng-show="immediateFailed">
    <span id="myGsignin"></span>
</span>

我也不知道Angular.js,但我猜ng-show手段显示元素 if immediateFailed。立即是指立即登录,如果您已经登录到您的谷歌帐户,这是谷歌所做的。如果您没有登录,并且它仍然没有显示,请查看该controllers.js文件并了解为什么 $scope.immediateFailed 会是false.

于 2013-11-05T05:55:32.463 回答
0

它可能不是确切的解决方案,但它适用于我的情况。

在下面的代码中,

<span id="signin" ng-show="immediateFailed">
    <span id="myGsignin"></span>
</span>

当我删除ng-show="immediateFailed"部分时,它确实有效。我不知道为什么,但我认为 ng-show 标签无法识别,因此阻止了谷歌登录按钮的呈现。当它被移除时,按钮渲染成功。

于 2015-02-10T08:46:35.337 回答