【问题标题】:How to upload multiple video Files from array如何从阵列上传多个视频文件
【发布时间】:2016-08-03 05:19:29
【问题描述】:

我有一系列视频文件。我试图上传。在下面的代码控制台中给出结果空对象。如何选择视频文件并上传。有可能吗??

var pictureInput=['hp.mp4'];
var myFormData = new FormData();
myFormData.append('pictureFile', pictureInput[0]);    
console.log(myFormData)
$.ajax({
   url: 'uploadurl',
   type: 'POST',
   processData: false, 
   contentType: false, 
   dataType : 'json',
   data: myFormData
});

【问题讨论】:

    标签: javascript jquery angularjs ajax html


    【解决方案1】:

    出于安全原因,无法从脚本中按名称读取或上传文件。用户必须从对话框中明确选择文件,或者将它们拖放到页面上。 (如果允许,页面将能够读取和传输系统上的任何文件,只需知道名称即可,这不是一件好事!)

    您可以在此处了解有关如何让用户在网络上指定文件的更多信息:https://developer.mozilla.org/en/docs/Using_files_from_web_applications

    【讨论】:

      【解决方案2】:

      仅使用文件对象而不是文件名。

      之前我使用 Google App Engine (Java) 和 Angular 1.5 成功地做到了这一点

      也看看这个公认的答案。 jQuery equivalent to XMLHttpRequest's upload?

      var formData = new FormData();
      formData.append('pictureFile',FILE_OBJECTS[0]);
      
      $.ajax({
        url: "YOUR_URL",
        type: "POST",
        data: formData,
        cache: false,
        contentType: false,
        processData: false,
        xhr: function() { // Custom XMLHttpRequest
          var myXhr = $.ajaxSettings.xhr();
          return myXhr;
        },
      }).success(function(data) {
        console.log("Success")
      }).error(function(data) {
        console.log("Error")
      });

      【讨论】:

      • 如何使用FILE_OBJECTS进入数组
      • 我想知道。如何将文件对象推入数组而不是字符串
      • 它们有多种方式。由于您是在 Angular JS 中实现的,所以我只使用 Angular 指令来实现。从我的角度来看,这是最好的方法。看到这个 Plunkr。浏览器控制台上的打印文件对象。 plnkr.co/edit/hYwg2pBaAMBlZeN3R34j?p=preview
      猜你喜欢
      • 1970-01-01
      • 2021-05-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-05-06
      • 2020-06-27
      • 2016-10-11
      • 2016-10-30
      相关资源
      最近更新 更多