0

我让Fanstatic与 Flask for CSS 和 JS 一起工作得很好。该库将允许您使用散列生成散列文件名。如果哈希click.js是,a0sd2lfu12v18fhac4ias0o7if那么您可以在烧瓶应用程序中呈现click-a0sd2lfu12v18fhac4ias0o7if.js。这样做的目的是使浏览器和 CDN 缓存失效。当文件的内容改变时,文件的名称也会改变。

我需要一个为我的图像生成哈希的库,就像 Fanstatic 为 CSS/JS 所做的那样,这样当我更新我的图像并部署到生产环境时,浏览器就会使用新图像。

Fanstatic 的文档提到它可以提供图像,但没有给出任何示例。如何使用 Flask 使用我的图像资产获取这个基于哈希的文件名?如果你知道如何用 fanstatic 做到这一点,你能告诉我怎么做吗?如果有更好的库来渲染基于哈希的文件名的图像,你能指出我正确的方向吗?

4

1 回答 1

1

假设您已设置 fanstatic Publisher,以下是qux在请求周期内计算资源 URL 的方法:

import fanstatic
needed = fanstatic.get_needed()
# The NeededResources object is where the configuration 
#(base_url, versionining, etc) is stored during the request.
url = '%s/%s' % (needed.library_url(qux.library), qux.relpath)
于 2013-05-04T05:06:44.793 回答