gpt4 book ai didi

asp.net-mvc - 将文件附加/上传到尚未保存的注释 - 对此的最佳策略是什么?

转载 作者:行者123 更新时间:2023-12-03 04:51:57 24 4
gpt4 key购买 nike

在我的应用程序中,我有一个文本区域输入,用户可以在其中输入注释。当他们单击“保存”时,会对 Web Api 进行 AJAX 调用,将注释保存到数据库中。

我希望用户能够在保存注释之前将多个文件附加到此注释(Gmail 样式)。如果可以在保存注释之前立即开始上传,那就太好了。

对此的最佳策略是什么?

附注我无法使用 jQuery Fineuploader 插件或类似的东西,因为我需要在将文件上传到 Azure 之前在服务器上为文件指定唯一的名称。

我想要做的事情是否可行,或者我是否必须将整个“注释”设为普通表单帖子而不是 API 调用?

谢谢!

最佳答案

此方法是基于文件的,但如果您愿意,可以将相同的逻辑应用于 Azure Blob 存储容器。

我通常做的是当用户获取 AddNote 页面时为他们提供一个唯一的 GUID。我创建一个名为:

的文件夹
C:\TemporaryUploads\UNIQUE-USER-GUID\

然后用户在此阶段上传的任何文件都会分配到此文件夹:

C:\TemporaryUploads\UNIQUE-USER-GUID\file1.txt
C:\TemporaryUploads\UNIQUE-USER-GUID\file2.txt
C:\TemporaryUploads\UNIQUE-USER-GUID\file3.txt

当用户执行 POST 并且我确认所有验证均已通过时,我只需将文件复制到已完成的文件夹中,并使用新生成的注释 ID:

C:\NodeUploads\Note-100001\file1.txt

然后删除C:\TemporaryUploads\UNIQUE-USER-GUID文件夹

清理

现在。对于真正继续保存笔记的用户来说,这一切都很好,但是对于那些上传文件并关闭浏览器的用户来说呢?此阶段有两种选择:

  1. 让后台服务定期清理这些文件。每天、每周等等。这应该是 Azure 的 Web Jobs 的工作
  2. 每次保存新笔记时,都会通过网络应用程序清理旧文件。这不是一个好方法,因为当您在执行文件 IO 时可能没有要删除的文件

关于asp.net-mvc - 将文件附加/上传到尚未保存的注释 - 对此的最佳策略是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22717636/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com