上传SPA中的大文件(角+快递)

时间:2015-03-29 17:09:07

标签: angularjs express upload single-page-application

正常上传我做的文件

<form method='post' enctype='multipart/form-data'>      
    <p><input type='text', name='name'/></p>            
    <p><input type='file', name='image'/></p>      
    <p><input type='submit', value='Wyślij'/></p>    
</form> 

如果我想在没有页面重新加载的情况下发送此表单怎么办?

我可以使用&#34;新的FileReader()&#34;并将base64绑定到$ scope但是使用大文件它并不能很好地工作。

我可以像上面那样上传没有页面重新加载的表单吗?

2 个答案:

答案 0 :(得分:1)

我认为您应该查看已经创建的指令ng-file-upload

功能

  1. 支持上传进度,正在进行中取消/中止上传,文件拖放(html5),目录拖放(webkit),CORS,PUT(html5)/ POST方法。
  2. 使用Flash polyfill FileAPI跨浏览器文件上传(HTML5和非HTML5)。允许在上载文件之前进行客户端验证/修改
  3. 使用$ upload.http()直接上传到数据库服务CouchDB,imgur等...文件的内容类型。这将启用角度http POST / PUT请求的进度事件。
  4. 单独的填充程序文件,FileAPI文件是根据需要加载的非HTML5代码,这意味着如果您只需要HTML5支持,则无需额外的加载/代码。
  5. 轻量级使用常规$ http上传(使用非HTML5浏览器的垫片),因此可以使用所有有角度的$ http功能。

答案 1 :(得分:0)

https://github.com/nervgh/angular-file-upload/似乎非常优雅地处理大型上传