【问题标题】:google appengine 'upload' directive won't work as expectedgoogle appengine“上传”指令无法按预期工作
【发布时间】:2012-01-20 18:37:35
【问题描述】:

由于 upload 是一个正则表达式,它匹配上传到静态保管库的文件,因此以下 app.yaml 处理程序应仅适用于 'static/images/jpg' 目录,不应该吗?

- url: /images/(.*?)\.(jpg|png)          
  static_files: static/images/\2/data.\2          
  upload: static/images/jpg/(.*)                     

虽然 'static/images/jpg' 是上传指令的唯一值,但两个请求都从服务器接收文件数据:

 wget http://application_url/images/data.jpg
 wget http: //application_url/images/data.png

你能描述一下上传指令的正确含义吗?

【问题讨论】:

  • 您在标题中说“不会按预期工作”,但实际上并没有告诉我们您遇到了什么问题。您的实际问题是什么?
  • 我预计只有application_url/images/data.jpg 给出数据响应,因为我将静态/图像/jpg/(.*) 标记为上传值。但application_url/images/data.png 也可用。我想它不应该,因为 static/images/png/ 不包含在“上传”指令值中。
  • 如果其他上传或 static_dir 指令导致文件作为静态文件上传,文件将可用。
  • 整个 app.yaml 由三个 url 组成: - url: /images/(.*?)\.(jpg|png) static_files: static/images/\2/data.\2 upload : static/images/jpg/(.*) - url: /favicon.ico static_files: static/favicon.ico 上传: static/favicon.ico - url: /.* script: home.py 没有指向 static/ 的链接images/png 目录作为静态文件。
  • 您是在 dev_appserver.py 中看到这种行为,还是在生产中看到这种行为?如果我正确理解您的问题,这绝对是出乎意料的行为。

标签: google-app-engine yaml


【解决方案1】:

不应该吗?

应该。

你能描述一下上传指令的正确含义吗?

您的理解是正确的,但是发生了错误。我试图重现这个问题,但还没有运气。你能用 --noisy 选项运行 appcfg.py 并检查 png 文件是否被无意处理了吗?

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-08-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-09-01
    • 1970-01-01
    相关资源
    最近更新 更多