Python 重新加载时 Flask 304 响应

Python Flask 304 response on reload

我在使用 Flask 应用程序时遇到问题,我似乎无法找到它。

我第一次加载我的 Flask 应用程序的索引页面时,所有资源都正确加载。如果我重新加载页面,我会在从我的静态目录加载的某些资源上收到 304 错误。这些资源没有变化,所以304是正确的,但是缓存中好像没有本地资源。

正如您在 chrome 的开发者控制台中看到的那样,红色的资源是具有 304' 的资源,如果我单击其中一个以查看其内容,它看起来好像不存在资源的缓存版本:

No data found from cached resource

这破坏了页面的功能。如果我硬重新加载,或清除缓存和硬重新加载,资源加载就好了。此外,如果我只是在 chrome 中禁用缓存,那么页面始终可以正常加载,但这需要开发人员控制台始终处于打开状态。这个烧瓶应用程序并不总是这样做。 flask 或 chrome 的内容自编写以来发生了变化,我无法弄清楚。

我也试过 tricks like others have recommended with putting date modified 标签到 url,但这并没有改变结果。 chrome 的本地缓存好像坏了。

这也发生在 Microsoft Edge 和 Firefox 中。

这是怎么回事!!!这让我抓狂!!!

尝试降级 FlaskWerkzeug 的版本(v2.0.2 对我有用)。

我使用的是 2.1.1 版本,我遇到了同样的问题,但我有另一个应用程序使用了这两个库,并且没有失败,它使用的是两个版本 2.0.2他们。

降级对我有用。

希望对您有所帮助!