我做了很多研究来找到一个 .NET 的上传组件,我可以用它来上传大文件,有一个进度条,并且可以恢复大文件的上传。我遇到过一些组件,例如Ajax上传器 http://ajaxuploader.com, 流畅上传 http://krystalware.com/products/slickupload/Default.aspx, and 战俘上传 http://www.element-it.com/PowUpload.ASPX,仅举几例。这些选项中的每一个都需要花钱,并且只有 PowUpload 可以进行可恢复上传,但它是使用 java applet 来完成的。我愿意花钱购买一个能很好地完成这些事情的组件,但如果我能自己编写它那就最好了。
我有两个问题:
- 是否可以在不使用 flash/java/Silverlight 的情况下在客户端恢复文件上传?
- 有没有人有一些代码或一篇文章的链接,解释如何编写允许流式上传和 ajax 进度条的 .NET HTTPHandler?
谢谢你,
Austin
[Edit]
我意识到我确实需要能够为我的项目进行可恢复的文件上传,对于可以做到这一点的组件有什么建议吗?
1) 是否可以在不使用 flash/java/Silverlight 的情况下在客户端恢复文件上传?
不可以。实际的 HTTP 协议本身不支持部分上传的恢复,因此即使您使用了 flash 或 silverlight,您仍然需要在服务器上使用其他工具,例如 FTP。
我过去通过用 C# 编写一个自定义客户端应用程序“解决”了这个问题,该应用程序将文件分解为小块 (2meg),分别传输这些块,然后服务器将它们全部组合在一起。
2) 有没有人有一些代码或一篇文章的链接,解释如何编写允许流式上传和ajax进度条的.NET HTTPHandler?
虽然这不能解决“恢复”问题,但我使用过SWF上传 http://swfupload.org/在客户端,效果非常好。它提供了一个智能文件浏览器(您可以在其中提示用户仅输入 jpeg 文件等)和上传进度跟踪,所有这些都无需修改您的服务器。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)