2

我正在开发一个在 Google App Engine 上使用 Django 的项目。有人问我是否可以将某些代码仅部署为已编译。

所以我想问题是我可以上传一个仅包含相关代码的 .pyc 文件吗?我已经在应用程序中使用 views.pyc 文件进行了基本测试,但一切都不起作用。我可以设置一些配置或其他配置以允许 Google App Engine 仅使用 .pyc 文件吗?

4

3 回答 3

7

不,你不能——你只能上传源代码。但是,没有充分的理由这样做:您的代码将在需要时在服务器上进行字节码编译,并且在任何情况下都没有人能够访问您的代码。

于 2011-02-15T11:14:31.920 回答
6

我意识到当你问这个问题时你不能这样做,但现在你可以,如果你使用 Python 2.7。请参阅Python 2.7 中的沙盒

您可以上传和使用.pyc,但不能与.py文件结合使用。您可以上传包含.py.pyc文件(或组合)的 zip 文件。

于 2012-05-31T06:21:47.010 回答
0

你为什么要首先这样做?因为您的 .py 文件已上传到 Google 基础架构,并且只有在您明确授予权限时才能看到。但是,是的,没有理由只上传 .pyc 文件不起作用。如果你尝试一下,在你的开发环境中,你会发现它就像 BaseHTTPServer 可以将 python 编译的模块作为处理程序一样工作。此外,最近的 GAE 支持 python 文件的自动预编译,这意味着只要您更新应用程序,python 文件就可以预编译和提供服务。--no_precompilation因此,如果有任何期望在应用引擎端检查 .py 文件,您可能不得不在 appcfg.py 上传期间进行操作。

于 2011-02-15T10:35:36.733 回答