我可以只将Python.pyc文件部署到Google App Engine吗?

我可以只将Python.pyc文件部署到Google App Engine吗?,python,django,google-app-engine,pyc,Python,Django,Google App Engine,Pyc,我正在谷歌应用引擎上利用Django进行一个项目。有人问我,是否有些代码只能作为编译代码部署 所以我想问题是我能上传一个只包含有问题代码的.pyc文件吗?我在一个应用程序中使用views.pyc文件做了一个基本测试,结果不起作用。我可以设置一些配置或其他配置来允许Google App Engine只使用.pyc文件吗?首先为什么要这样做?因为你的.py文件被上传到谷歌基础设施,只有在你明确授予权限的情况下才能看到。 但是是的,没有理由只上传.pyc文件不起作用。如果您在开发环境中尝试,您会发现它

我正在谷歌应用引擎上利用Django进行一个项目。有人问我,是否有些代码只能作为编译代码部署


所以我想问题是我能上传一个只包含有问题代码的.pyc文件吗?我在一个应用程序中使用views.pyc文件做了一个基本测试,结果不起作用。我可以设置一些配置或其他配置来允许Google App Engine只使用.pyc文件吗?

首先为什么要这样做?因为你的.py文件被上传到谷歌基础设施,只有在你明确授予权限的情况下才能看到。 但是是的,没有理由只上传.pyc文件不起作用。如果您在开发环境中尝试,您会发现它的工作原理与BaseHTTPServer将python编译的模块作为处理程序一样。
此外,最近的GAE支持python文件的自动预编译,这意味着只要您更新应用程序,就可以预编译和提供python文件。因此,如果希望在appcfg.py上传过程中检查appengine端的.py文件,那么您可能必须使用
--无预编译

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

我意识到,当您提出这个问题时,您无法做到这一点,但现在,如果您使用Python 2.7,您可以做到。见:

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


你知道,pyc可以反编译/反汇编吗?是的,如果这是真的,这将是一个很好的建议。“……在任何情况下,没有人能够访问您的代码。”这可能是索尼的想法。如果你有一个企业级的程序,你必须保护它。在任何情况下,无论是企业还是非企业,信任您没有SLA的第三方(或至少有一方保护您)都不是最佳做法。@eficker服务条款详细说明了我们可以查看您的来源的情况(它们非常有限);SLA是完全不同的;您可以在Python2.7中上传
.pyc
文件(参见我的答案)。