Krajee Bootstrap File-Input无法通过大文件传递uploadExtraData

时间:2019-02-13 17:06:20

标签: javascript jquery ajax asp-classic bootstrap-file-input

我有一个使用文件输入的Ajax上传,即使对于中等大小的上传也很完美(例如:12mb可以正常工作)。但是,对于较大的上载(例如:40mb),是不是没有传递“额外的”表单数据,还是服务器端代码(经典ASP)试图在上载完成并传递数据之前处理它们? / p>

js如下:

$('#file').fileinput({   
  maxFileSize:  45000 ,
  maxFileCount: 1,
  required: true,
  uploadUrl: 'ajax_upload.asp?',
  uploadAsync: false,
  dropZoneEnabled: false,
  uploadExtraData: function (previewId, index) {
      //get checkbox values
      var strShowTo = ''
      showToUserIDs: $("input[name=showToUserIDs]").val(),
      $("input[name='showToUserIDs']").each(function () {
          if ($(this).is(':checked')) {
              thisValue = $(this).val()
              strShowTo = strShowTo + thisValue + ',';
          }
      });
      var formData = new FormData();
      var formData = {
          privateFolder: $('select[name="privateFolder"] option:selected').val(),
          title: $("input[name=title]").val(),
          sendEmailNotices: $("input[name=sendEmailNotices]").val(),
          body: $("input[name=description]").val(),
          showToUserIDs: strShowTo
      };
      return formData;
  },
  });

我认为这不是服务器设置问题,因为我已经将“最大请求实体正文限制”设置为100mb,并将“请求过滤/编辑功能设置” /“最大允许内容长度”设置为100mb。

enter image description here enter image description here

当我上传一个大文件时,服务器端代码中的所有uploadExtraData值均为“”。但是,它们在Chrome网络检查器的“表单数据”部分中列出:

enter image description here

1 个答案:

答案 0 :(得分:0)

事实证明,服务器端代码使用的组件(Motobit ASP Upload)将表单的最大大小设置为15mb

Dim Form: Set Form = Server.CreateObject("ScriptUtils.ASPForm")
Form.SizeLimit = 12*&H100000