Web应用程序创建临时.csv文件的最佳策略是什么?

时间:2015-01-23 12:48:36

标签: python django web-applications server temporary-files

我的应用程序会临时创建.csv文件以存储一些数据行。在用户退出应用程序后,管理此类临时文件创建和删除它们的最佳策略是什么? 我认为在服务器上创建临时的.csv文件并不是一个好主意。 有没有简单的方法来管理客户机(浏览器)上的临时文件创建?

这些.csv文件包含表记录 - >这将在以后用作d3.js可视化图表/元素的源。

请分享您对此方案的实时应用程序的体验?

我正在使用DJango框架(Python)来实现这一目标。

2 个答案:

答案 0 :(得分:3)

为什么要创建的磁盘文件?对于较小的文件,请使用内容中的文件对象,如StringIO

如果您的CSV文件大小可能会变大,请使用tempfile.SpooledTemporaryFile() object;如果您向它们写入足够的数据,它们会动态地将数据交换到磁盘文件。关闭后,文件将自动从磁盘清除。

答案 1 :(得分:0)

如果您希望存储数据客户端,"HTML local storage"可能是您的选择。这使您可以将字符串数据存储在用户浏览器中的键值对中,但需遵循相同的原始策略(因此一个源(域)的数据仅对该源可见)。数据大小也有5MB的限制,必须是字符串 - 对于CSV来说是正确的。

如果您的可视化页面/代码是从同一个域提供的,则可以访问本地存储中的数据。