问题复现
我有一个视图函数,它理应在后台获取当日的数据(每天的数据不一样),然后渲染到前端,但访问得到的数据却是上一次访问得到的数据(即它不会自动更新视图),如果我提前在视图渲染函数前 return 一个任意字符串,刷新请求,然后恢复代码,它又成功地更新视图了。
我的猜测
代码逻辑应该没有问题,问题大概率是关于缓存的,不知 flask 是否有自动缓存机制,请大佬解惑。先行感谢🙏。
1
nagisaushio 307 天前 via Android
可以在浏览器看一下请求头?
|
2
rationa1cuzz 307 天前
印象中倒是没有,浏览器倒是有缓存,看一下后台日志确认后端是否收到请求,排除前端的问题再从后端打印几个 log 就知道了
|
3
22too 307 天前
如果没设置应该是没有的,你这个感觉是其他缓存比如 nginx 的问题。 不确定你是单独一个 python flask 去浏览器直接看了,还是添加了其他的组件。
|
4
turtlekey OP @nagisaushio get 请求,而且视图函数没有参数,因为有一个函数封装了每日数据获取,视图函数中调用它即可。
|
5
turtlekey OP @rationa1cuzz 浏览器 Hard Reload 之后依然无法获得最新数据,前端肯定没问题。刚刚在视图函数中添加一个 print 语句,然后再请求,数据更新了,真是奇怪,似乎只要在视图函数中随便加一条语句,就能更新视图。是否是 flask 热更新问题?
|
7
summerwar 307 天前
先放上你写的那部分代码,去掉敏感的,然后才能看出来有没有问题
|
8
Bt4Girls 306 天前
盲猜一下,会不会本身代码里面查询有时区问题?
|