【问题标题】:Cancel file upload on server when cancelled from client从客户端取消时取消服务器上的文件上传
【发布时间】:2017-01-10 15:11:02
【问题描述】:

我在我的应用程序中使用剑道文件上传控制。例如,我选择一个 20 MB 大小的文件。请求发送到需要将此文档上传到 azure 的服务器 + 插入指向 blob 的数据库条目。

问题是,如果服务器已将所有字节传输给自己,并且其余操作需要一些时间(例如上传文件并将条目插入数据库),同时用户取消从客户端上传,它会得到在客户端取消但服务器仍继续上传。 我该如何处理?有什么想法吗?

谢谢!

【问题讨论】:

  • 这不是应该使用任何客户端脚本来解决的问题,因为我不相信您将能够在浏览器关闭时发出新请求,并且在连接时它肯定不会工作因网络问题中断或取消。是的,有一个取消事件,您应该在取消时调用一些服务器端方法来删除上传的文件。
  • 是的,但是假设在所有需要的位都传输到服务器端之后,服务器上的上传代码需要更多时间(对于更大的文件)。同时,用户关闭浏览器,我处理取消事件并尝试取消上传的文档(Azure 中的 blob)。这将失败,因为文件尚未完全上传。可能有一些我能想到的快速修复,但我相信这应该是几乎所有其他 Web 应用程序的常见场景。标准方法是什么?
  • 没有标准的方式取决于您上传的存储空间,请参阅此帖子,这可能会有所帮助simple-talk.com/cloud/platform-as-a-service/…

标签: file-upload kendo-ui client-server kendo-upload


【解决方案1】:

这不是应该使用任何客户端解决的问题 脚本,因为我不相信您将能够在何时提出新请求 浏览器正在关闭,连接时它肯定不会工作 因网络问题中断或取消。是的,有一个 取消事件,您应该在取消时调用一些服务器端方法 删除上传的文件。

查看 Lukas 在 stackoverflow 上的帖子和回答,并在剑道上传中使用取消事件。

How to stop file transfer if browser is closed/upload cancelled

【讨论】:

  • 请看我上面的评论
猜你喜欢
  • 2017-09-20
  • 2016-03-18
  • 1970-01-01
  • 1970-01-01
  • 2017-05-18
  • 2015-10-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多