python - 如何列出静态目录中的文件?

标签 python google-app-engine

我正在使用 Google App Engine 和 Python,但无法列出静态目录的文件。以下是我目前使用的代码。

app.yaml

- url: /data
  static_dir: data

列出文件的 Python 代码

myFiles = []
for root, dirs, files in os.walk(os.path.join(os.path.dirname(__file__), 'data/') ):
    for name in files:
        full_name = os.path.join(root, name)
        myFiles.append('%s;%s\n' % (name, datetime.fromtimestamp(os.stat(full_name).st_mtime)))

当我在我的机器上本地运行这段代码时,一切正常。我的 Python 脚本位于目录的根目录下,它遍历数据目录下的文件。但是,当我在 GAE 中上传并运行完全相同的代码时,它不起作用。在我看来,我的应用程序的目录结构并没有完全复制到 Google App Engine 中。 静态文件在哪里?

谢谢!

最佳答案

https://developers.google.com/appengine/docs/python/config/appconfig#Python_app_yaml_Static_file_handlers

它们并不在您认为的位置,GAE 将静态内容放入相当于 CDN 的 GoogleFS。这个想法是静态内容旨在直接提供给您的用户,而不是充当您可以操作的文件存储。此外,GAE 有 1K 文件限制,如果您可以操纵静态文件存储,则很难遵守此规则。

关于python - 如何列出静态目录中的文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/477135/

相关文章:

python - 如何进入 Python 虚拟环境并从 shell 脚本在其中运行 shell 命令?

python - 无法点击分页中的下一个按钮

python - 为什么我的缓冲区输出被切碎了? C++套接字编程

python - 如何通过企业代理访问 App Engine?

node.js - 刷新页面时未找到请求的 URL

python - Django:在数据 View 中添加新字段

python - 您有 3 个未应用的迁移。在您为应用程序 : admin, auth 应用迁移之前,您的项目可能无法正常工作

python - Eclipse 和 Google App Engine : ImportError: No module named _sysconfigdata_nd; unrecognized arguments: --high_replication

node.js - Google App Engine Nodejs 错误 409

python - 在 Google App Engine 上模拟浏览器