ContentType多部分/表单数据的自定义边界值-jQuery

时间:2018-12-07 01:43:38

标签: javascript jquery multipartform-data content-type form-data

我已经浏览过thisthis和其他几条类似的帖子,但是都没有解决我的查询。

按照rfc spec处理Multipart Content-Type,有一个唯一的边界值,需要设置为标头,并在有效负载中使用,以及分隔正文中的不同元素。

如何使用jQuery为多部分/表单数据添加自定义边界值。目前,浏览器添加了默认边界值,我想使用预定义的值。

   var boundaryVal = 'boundary02018983645'
  var formData = new FormData()
  // '--' + boundaryVal
  formData.append('document', app.components.document[0])
  // '--' + boundaryVal
  formData.append('documentName', app.components.document[0].name)
  // '--' + boundaryVal
  formData.append('documentDescription', vWeb.forms.components.document[x].name)
  // '--' + boundaryVal
  formData.append('documentActivityDate', moment().format('YYYY-MM-DD'))
  // '--' + boundaryVal + '--'
  ajaxRequests.push(function () {
    var deferred = new $.Deferred()
    app.services.postFileUpload({
      data: formData,
      headers: {
        'Content-Type': 'multipart/form-data;boundary=' + boundaryVal
      },
      contentType: false,
      processData: false,
      parseData: false
    }).done(function (data) {

    }).fail(function () {

    })
    return deferred
  })

浏览器添加以下边界值

------WebKitFormBoundaryKAf4ulYAAiTnWDMW
Content-Disposition: form-data; name="document"; filename="Map_2017.pdf"
Content-Type: application/pdf


------WebKitFormBoundaryKAf4ulYAAiTnWDMW
Content-Disposition: form-data; name="documentName"

Map_2017.pdf
------WebKitFormBoundaryKAf4ulYAAiTnWDMW
Content-Disposition: form-data; name="documentDescription"

Map_2017.pdf
------WebKitFormBoundaryKAf4ulYAAiTnWDMW
Content-Disposition: form-data; name="documentActivityDate"

2018-12-07
------WebKitFormBoundaryKAf4ulYAAiTnWDMW--

但是我希望像这样自定义

------boundary02018983645
Content-Disposition: form-data; name="document"; filename="Map_2017.pdf"
Content-Type: application/pdf


------boundary02018983645
Content-Disposition: form-data; name="documentName"

Map_2017.pdf
------boundary02018983645
Content-Disposition: form-data; name="documentDescription"

Map_2017.pdf
------boundary02018983645
Content-Disposition: form-data; name="documentActivityDate"

2018-12-07
------boundary02018983645--

0 个答案:

没有答案