我正在使用Tornado来提供HTTP文件,该文件使用多个JavaScript文件,如下所示:
<script src="static/js/jquery-1.11.0.min.js" type="text/javascript"></script>
<script src="static/js/stream.js" type="text/javascript"></script>
<script src="static/js/d3.min.js"></script>
<script src="static/js/d3.slider.js"></script>
不幸的是,当我更改这些文件时,并没有意识到它们已经更改,并且会继续304
响应。我试图通过禁用缓存来停止这些响应,但这没有用。
我应该在“龙卷风”中设置其他设置吗?这是我应该报告的错误吗?
使用RequestHandler.static_url
。它将返回一个版本化的url(默认情况下追加?v =),该URL允许无限期地缓存静态文件。
启用它的步骤:
static_path
在您的设置中定义,它是将提供静态文件的目录:
settings = {
'static_path': '/var/www/static/',
# other settings
}
向您的应用程序提供以下设置:
app = tornado.web.Application(settings=settings, **kwargs)
static_url
在模板中使用:
<script src="{{ static_url('js/jquery-1.11.0.min.js') }}" type="text/javascript"></script>
<script src="{{ static_url('js/stream.js') }}" type="text/javascript"></script>
<script src="{{ static_url('js/d3.min.js') }}"></script>
<script src="{{ static_url('js/d3.slider.js') }}"></script
输出将类似于(检查那些?v=hash
)
<script src="/static/js/jquery-1.11.0.min.js?v=12d" type="text/javascript"></script>
<script src="/static/js/stream.js?v=34a" type="text/javascript"></script>
<script src="/static/js/d3.min.js?v=df3"></script>
<script src="/static/js/d3.slider.js?v=ad1"></script
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句