search

Home  >  Q&A  >  body text

javascript - 如何实现web大文件(G级别)上传

如何在网页实现大文件上传。。。

ringa_leeringa_lee2894 days ago739

reply all(6)I'll reply

  • 迷茫

    迷茫2017-04-10 12:46:34

    以上的几种技术都无法解决这个难题, 幸运的是, 新的html5标准给我们带来了无限可能

    这里是一篇介绍 http://www.html5rocks.com/zh/tutorial...
    注意要看的是分割文件那一块, 配合服务器代码, 可以把文件块拼起来, 实现G级别甚至更大的文件上传

    我自己的项目已经使用了这样的技术 http://longplay.co 当然要求浏览器比较新啦

    reply
    0
  • 黄舟

    黄舟2017-04-10 12:46:34

    一般有三种方法:
    1. HTML form(JavaScript ajax)。
    2. RIA技术(Flex Silverlight等),最常用的是使用 SWFupload 实现。
    3. 插件技术(Activex,applet等),要装插件比较麻烦。
    大文件上传还需要后端做相应配置和支持。
    推荐个文辑:http://wenku.baidu.com/album/view/385...

    reply
    0
  • ringa_lee

    ringa_lee2017-04-10 12:46:34

    网上有一个Web超大文件上传断点续传控件:Xproer.HttpUploader5
    此控件支持100G文件的断点续传操作,提供了完善的开发文档,支持文件MD5验证,支持文件批量上传。
    粘贴文件,简化选择文件操作:

    文件MD5值计算进度:

    文件MD5值计算完毕:

    服务器根据MD5检测是否存在相同文件:

    续传文件:

    从服务器加载文件列表:

    文件上传中:

    文件上传完毕:

    上传文件夹:

    与Discuz!X2整合-后台安装断点续传控件:

    与Discuz!X2整合-后台启用断点续传控件:

    与Discuz!X2整合-后台断点续传控件启用成功:

    与Discuz!X2整合-前台发帖页面:

    与Discuz!X2整合-上传:

    页面调用示例代码:

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" >
    <head>

    <title>HttpUploader5-Access演示页面</title>
    <link href="css/HttpUploader.css" type="text/css" rel="Stylesheet"/>
    <script type="text/javascript" src="js/jquery-1.3.2.min.js"></script>
    <script type="text/javascript" src="js/HttpUploader.js"></script>
    <script language="javascript" type="text/javascript">
    var cbMgr = new HttpUploaderMgr();

        $(document).ready(function ()
        {
            cbMgr.LoadTo("FilePanel");
            cbMgr.Init();
            cbMgr.UpdateCheck(); //安装检查
    
            //取MAC地址
            //var mac = cbMgr.Browser.GetMacs();
            //alert(mac[0]);
    
            //上传指定目录下的所有文件
            //cbMgr.Browser.GetFiles("F:\\ftp\\", false);
        });
    </script>
    

    </head>
    <body>

    </body>
    </html>

    资源下载:
    CAB安装包(x86)
    CAB安装包(x64)
    Chrome插件安装包
    Firefox插件安装包
    EXE安装包
    开发文档
    升级日志
    ASP.NET(C#)示例代码:
    ASP.NET-ACCESS示例
    ASP.NET-SQL2005示例
    JSP示例代码
    JSP-ACCESS示例
    JSP-Oracle示例
    JSP-SQL2005示例
    JSP-MySQL示例
    PHP示例代码
    PHP-MySQL示例

    reply
    0
  • 伊谢尔伦

    伊谢尔伦2017-04-10 12:46:34

    大文件要考虑断点的问题吧,目前靠谱的解决方案还是flash,或者根据浏览器做本地插件

    reply
    0
  • 高洛峰

    高洛峰2017-04-10 12:46:34

    silverUpload是一款基于Http协议的断点续传上传控件。她区别于swfupload之类的基于flash技术的控件,无需预读文件到内存中,即可实现文件断点续传功能。

    http://www.silverupload.cn

    reply
    0
  • 迷茫

    迷茫2017-04-10 12:46:34

    我多嘴问句,大家不要见怪。如果从服务器里把整站给下载?我是个新手,ftp下载行不通!

    reply
    0
  • Cancelreply