栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

django、odoo等框架通过局域网或外网下载的文件时,下载的是之前的文件

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

django、odoo等框架通过局域网或外网下载的文件时,下载的是之前的文件

问题描述
  1. 使用django、odoo等框架开发的服务端,下载某个文件后,又对文件进行了修改,然后重新下载发现还是修改之前的文件。
  2. 过一段时间、或首次更换其它浏览器又能下载新版本的文件。
  3. 本地测试时,只有使用局域网或外网地址下载会出现此问题,使用127.0.0.1或localhost下载无此类问题 。
问题原因

服务端对该链接做了缓存,第二次下载时,下载的是缓存中的内容。这个问题原因时多次测试分析得到的结果,并未看源码。

解决方案

经过分析得出缓存是使用下载链接作为key来保存的。所以,只要保证每次的下载链接的唯一性即可解决。也就是在链接后方提供任意参数。
比如:
原下载连接为http://xxx:8080/opt/temp/test.docx,
那么将下载链接改为http://xxx:8080/opt/temp/test.docx?timestamp=1634397819&id=3即可(通过时间戳和用户id保证了下载链接的唯一性)。
解决方案很简单,也就不想考虑什么其它方案了。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/329758.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号