0

有没有办法将处理程序限制为仅开发服务器(在 App Engine 中)?

我的场景:

在 dev 中,我将我的jscss拆分为许多文件,这样调试和观察流程很容易。我有一个小脚本,它将这些资源编译成 2 个文件(1 个js和 1 个css)并创建一个 index.html 的副本,其中仅包含这两个文件。

原始与编译的 HTML 和资源有不同的路径,我希望生产版本只包含编译的。有任何想法吗?

4

2 回答 2

2

在其中,app.yaml您可以跳过一些文件并阻止它们被上传,而在本地工作时它们仍然可以访问。

现在,如果您想检查您的应用程序是在本地运行还是在生产服务器中运行,您应该检查SERVER_SOFTWARE变量:

import os

PRODUCTION = os.environ.get('SERVER_SOFTWARE', '').startswith('Google App Engine')
DEVELOPMENT = not PRODUCTION

然后根据您使用的模板语言,您将必须通过上述其中之一或两者,并根据它们加载缩小版本或实际源代码。

于 2013-10-06T13:26:57.157 回答
1

您可以在运行时检查环境以确定您所处的模式。(Lipis 发布了详细信息。)您可以使用它来动态构造馈入的数组,WSGIApplication以将请求映射到处理程序。如果您处于开发模式,请将仅开发模式条目添加到该数组。

于 2013-10-07T02:24:33.597 回答