【问题标题】:GAE detect running place at localhost or appspotGAE 在 localhost 或 apppot 检测运行位置
【发布时间】:2014-01-03 07:21:21
【问题描述】:

我有 GAE 应用程序。它使用 Oauth 2.0 协议。我目前使用 Java 库。 目前,我手动切换重定向 URL。

当我在 localhost 上进行测试时,我使用 localhost:8888/oauth2callback 当我部署应用程序时,我设置了example.appspot.com/oauth2callback.

那么我如何检测应用程序是在本地主机上运行还是已部署?

【问题讨论】:

标签: java google-app-engine


【解决方案1】:

根据documentation,您可以执行以下操作

您可以检查系统属性com.google.appengine.runtime.environment 的值以确定它是“生产”还是“开发”。

来自文档的示例代码:

if (SystemProperty.environment.value() ==
SystemProperty.Environment.Value.Production) {
// The app is running on App Engine...
}

等等。

在 Python 方面,请查看以下 documentationsn-p:

  • SERVER_SOFTWARE:在开发 Web 服务器中,此值为“Development/X.Y”,其中“X.Y”是运行时的版本。在 App Engine 上运行时,此值为“Google App Engine/X.Y.Z”。

【讨论】:

    【解决方案2】:

    可以使用 oAuthService 方法来检测 localhost 环境

    OAuth for Java Overview

    [...] 在本地开发服务器上,oauth.getCurrentUser() 总是返回 电子邮件设置为“example@example.com”和用户 ID 设置的用户对象 为 0,无论是否发出了有效的 OAuth 请求。 [...]

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-06-11
      • 2018-07-07
      • 1970-01-01
      • 1970-01-01
      • 2011-12-15
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多