有没有办法将处理程序限制为仅开发服务器(在 App Engine 中)?
我的场景:
在 dev 中,我将我的js和css拆分为许多文件,这样调试和观察流程很容易。我有一个小脚本,它将这些资源编译成 2 个文件(1 个js和 1 个css)并创建一个 index.html 的副本,其中仅包含这两个文件。
原始与编译的 HTML 和资源有不同的路径,我希望生产版本只包含编译的。有任何想法吗?
有没有办法将处理程序限制为仅开发服务器(在 App Engine 中)?
我的场景:
在 dev 中,我将我的js和css拆分为许多文件,这样调试和观察流程很容易。我有一个小脚本,它将这些资源编译成 2 个文件(1 个js和 1 个css)并创建一个 index.html 的副本,其中仅包含这两个文件。
原始与编译的 HTML 和资源有不同的路径,我希望生产版本只包含编译的。有任何想法吗?
在其中,app.yaml
您可以跳过一些文件并阻止它们被上传,而在本地工作时它们仍然可以访问。
现在,如果您想检查您的应用程序是在本地运行还是在生产服务器中运行,您应该检查SERVER_SOFTWARE
变量:
import os
PRODUCTION = os.environ.get('SERVER_SOFTWARE', '').startswith('Google App Engine')
DEVELOPMENT = not PRODUCTION
然后根据您使用的模板语言,您将必须通过上述其中之一或两者,并根据它们加载缩小版本或实际源代码。
您可以在运行时检查环境以确定您所处的模式。(Lipis 发布了详细信息。)您可以使用它来动态构造馈入的数组,WSGIApplication
以将请求映射到处理程序。如果您处于开发模式,请将仅开发模式条目添加到该数组。