【问题标题】:Flask - GET request to 'static' directory returns Error 404 [duplicate]Flask - 对“静态”目录的 GET 请求返回错误 404 [重复]
【发布时间】:2017-10-16 02:56:59
【问题描述】:

Flask 文档说明:

动态 Web 应用程序也需要静态文件。这通常是哪里 CSS 和 JavaScript 文件来自。理想情况下您的网络服务器 被配置为为您服务,但在开发过程中 Flask 可以 也这样做。只需在您的包中创建一个名为 static 的文件夹或 在您的模块旁边,它将在 /static 上可用 应用。

但在我的 web 应用程序中,当我尝试访问 localhost:5000/static/ 时,浏览器上出现 404 错误。更奇怪的是,当我在调试模式下运行它时,我在终端上得到一个200(ok),在浏览器上得到一个404

你能解释一下发生了什么吗?我想在浏览器上列出我的静态目录。

【问题讨论】:

    标签: python flask web-development-server


    【解决方案1】:

    您收到 404,因为资源无法按原样返回。你得到 200 是因为资源确实“存在”,因为有一个静态文件夹。

    试试这个:

    http://packages.python.org/Flask-AutoIndex/

    您可以显示目录内容并在浏览器中显示它们等。

    【讨论】:

    • 所以,本来 Flask 不会在我 GET 时为我列出 static 中的文件,对吧?
    • 对,你必须为任何 Web 服务器启用“目录列表”,在这种情况下,Flask-AutoIndex 包是 Flask 友好的方法。
    【解决方案2】:

    您放在/static 文件夹中的文件将可以访问,但flask 不会列出目录。因此,例如,如果您将 script.js 放入 /static/js 中,即使 GET /static 将 404,您也应该能够使用 GET /static/js/script.js

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-06-09
      • 2020-09-05
      • 1970-01-01
      相关资源
      最近更新 更多