turtlekey
V2EX  ›  Flask

请教大佬们一个关于 flask 的缓存问题?

  •  
  •   turtlekey · Feb 27, 2024 · 4136 views
    This topic created in 825 days ago, the information mentioned may be changed or developed.

    问题复现

    我有一个视图函数,它理应在后台获取当日的数据(每天的数据不一样),然后渲染到前端,但访问得到的数据却是上一次访问得到的数据(即它不会自动更新视图),如果我提前在视图渲染函数前 return 一个任意字符串,刷新请求,然后恢复代码,它又成功地更新视图了。

    我的猜测

    代码逻辑应该没有问题,问题大概率是关于缓存的,不知 flask 是否有自动缓存机制,请大佬解惑。先行感谢🙏。

    8 replies    2024-02-28 09:16:16 +08:00
    nagisaushio
        1
    nagisaushio  
       Feb 27, 2024 via Android
    可以在浏览器看一下请求头?
    rationa1cuzz
        2
    rationa1cuzz  
       Feb 27, 2024
    印象中倒是没有,浏览器倒是有缓存,看一下后台日志确认后端是否收到请求,排除前端的问题再从后端打印几个 log 就知道了
    22too
        3
    22too  
       Feb 27, 2024
    如果没设置应该是没有的,你这个感觉是其他缓存比如 nginx 的问题。 不确定你是单独一个 python flask 去浏览器直接看了,还是添加了其他的组件。
    turtlekey
        4
    turtlekey  
    OP
       Feb 27, 2024
    @nagisaushio get 请求,而且视图函数没有参数,因为有一个函数封装了每日数据获取,视图函数中调用它即可。
    turtlekey
        5
    turtlekey  
    OP
       Feb 27, 2024
    @rationa1cuzz 浏览器 Hard Reload 之后依然无法获得最新数据,前端肯定没问题。刚刚在视图函数中添加一个 print 语句,然后再请求,数据更新了,真是奇怪,似乎只要在视图函数中随便加一条语句,就能更新视图。是否是 flask 热更新问题?
    turtlekey
        6
    turtlekey  
    OP
       Feb 27, 2024
    @22too 没有其他组件,单纯 flask ,而且没有使用 nginx ,使用的是 flask 自带的服务器。
    summerwar
        7
    summerwar  
       Feb 27, 2024
    先放上你写的那部分代码,去掉敏感的,然后才能看出来有没有问题
    Bt4Girls
        8
    Bt4Girls  
       Feb 28, 2024
    盲猜一下,会不会本身代码里面查询有时区问题?
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   3805 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 56ms · UTC 10:24 · PVG 18:24 · LAX 03:24 · JFK 06:24
    ♥ Do have faith in what you're doing.