如何检查服务器是否在 App Engine 上 运行

How can I check if the server is running on app engine

我需要检查服务器是否在 App Engine 上 运行。

像这样:

if (canRunAppEngine) {
    runAppEngine(app.handleRequest);
} else {
    app.start();
}

您可以指定环境变量,然后检查您的 Dart 代码是否已设置

https://cloud.google.com/appengine/docs/python/config/appconfig#Python_app_yaml_Defining_environment_variables

app.yaml

env_variables:
  IS_APPENGINE: 'true'

在 Dart 中

if(Platform.environment['IS_APPENGINE'] == 'true') {
  ...
}

检查环境变量 com.google.appengine.runtime.environment 的值,它是 "Production""Development"。如果它是 null,则您不是 运行 App Engine。

我认为以下内容应该可以胜任:

if(Platform.environment['com.google.appengine.runtime.environment'] != null) {
   ...
}

注意:在 Java 中,通常使用 SystemProperty.environment.value() 来检查值。我没有使用 Dart 的经验,我希望使用它的人可以确认以上是否有效。