【问题标题】:Sending a file via ajax通过ajax发送文件
【发布时间】:2017-01-08 21:54:13
【问题描述】:

我想使用HTTP POST 请求发送文件,问题是我做不到 - 服务器端postfiles 数组为空:

<input type="file" id="file"/>

let data = document.getElementById('file').files[0];
let xmlhttp = new XMLHttpRequest();
xmlhttp.open("POST", 'http://someurl.com/something', true);
xmlhttp.setRequestHeader("Content-Type", "multipart/form-data");
xmlhttp.send(data);

为什么会这样?文件存在,数据变量正确。请求正在正确发送。怎么了?

【问题讨论】:

    标签: php ajax http


    【解决方案1】:

    使用 FormData 对象发送您的文件。

    var formData = new FormData();
    formData.append("file", data); // data is your file
    xmlhttp.send(formData);
    

    【讨论】:

      猜你喜欢
      • 2018-09-29
      • 2012-09-26
      • 2019-03-22
      • 2011-10-16
      • 2015-05-26
      • 2015-04-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多