java - GAE 在 localhost 或 appspot 检测运行位置

标签 java google-app-engine

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

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

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

最佳答案

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

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

来自文档的示例代码:

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

等等。

在 Python 方面,查看以下 documentation片段:

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

关于java - GAE 在 localhost 或 appspot 检测运行位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20843246/

相关文章:

java - 断开连接时重新连接 Java 套接字连接

java - 为什么这个简单的 Java 字节码会导致 StackOverflow 错误?

java - 无法使用 JXL 在包含图表的工作表上书写

java - Google App Engine - 应用程序在本地 GAE 开发服务器上运行,但在 GAE 上失败

java - 如何获取添加到数据存储中的最后 10 条记录?

java - 弹出文本字段 Java

java.lang.NoSuchFieldError : ACCEPT_CASE_INSENSITIVE_VALUES

android - Google App Engine : DuplicateFileException

java - 谷歌应用程序引擎/Java : ConcurrentModificationException thrown when using session. setAttribute()

google-app-engine - 由于 401(尝试 1/2)导致的 GAE 刷新