作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
在我的应用程序中,我有一个文本区域输入,用户可以在其中输入注释。当他们单击“保存”时,会对 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
文件夹
清理
现在。对于真正继续保存笔记的用户来说,这一切都很好,但是对于那些上传文件并关闭浏览器的用户来说呢?此阶段有两种选择:关于asp.net-mvc - 将文件附加/上传到尚未保存的注释 - 对此的最佳策略是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22717636/
我是一名优秀的程序员,十分优秀!