turtlekey
V2EX  ›  Flask

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

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

    问题复现

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

    我的猜测

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

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