繁体   English   中英

删除 Flask 内存缓存

[英]deleting Flask memory cache

我有一个像这样开始的网络应用程序:

#It starts here
@app.route('/game')
def game():

game内部,它使用PIL动态构建图像并将其保存到/static/testing_image.png

然后它呈现一个模板。

return render_template('game.html',
                           file_name=file_name,
                           image_width=SQ_SIZE,
                           sleep_time=1000
                           )

现在,在game.html ,发生的情况是我等待sleep_time ms,然后我想再次调用game ,以便构建和显示新图像

下面的代码等待图像完全加载,然后显示、等待和重定向。

function LoadImage() {
     var img = new Image(),
      x = document.getElementById("image");

    img.onload = function() {
        x.src = img.src;
        var sleep_time={{sleep_time}};
        setTimeout(function(){
            //I REDIRECT HERE
            window.location="{{url_for('game')}}";
         }, sleep_time);

     };

    img.src="{{url_for('static', filename=file_name)  }}";
}

问题

这个问题当然是图像从内存缓存服务,即使底层文件, /static/testing_image.png已经更新,烧瓶没有得到新的。

在此处输入图片说明

您可以在下面看到testing_image.png是如何从缓存中提供的。

我的问题有两个方面。

  1. 我应该以不同的方式做这件事吗?
  2. 如果没有,我如何强制烧瓶对图像进行硬重新加载?

可能有更好的方法来构建它,但是如果不查看其余代码就很难说。 至于破坏缓存,你应该能够使用这个:

http://flask.pocoo.org/snippets/40/

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM