【问题标题】:Append string as file upload using FormData使用 FormData 将字符串作为文件上传附加
【发布时间】:2018-06-20 23:11:00
【问题描述】:

我想知道是否可以使用表单数据将字符串作为文件上传。我相信应该有一些File 对象,可以有valuefilename,也可能还有mime-type 设置。
伪代码:

var file = new File();
file.name = "file.txt";
file.mimeType = "text/plain";
file.value = "blah blah\nsecond line";
var data = new FormData();
data.append(file);

【问题讨论】:

    标签: javascript ajax form-data


    【解决方案1】:

    适合我

    const blob = new Blob(['blah blah\nsecond line'], {type : 'text/plain'})
    formData.append('file', blob, 'file.txt')
    

    【讨论】:

      【解决方案2】:

      确实有一个名为File(在现代浏览器上)的对象,但出于安全问题,您不能创建它的新实例。因此,你所寻求的都是不可能的。

      【讨论】:

      • OP 试图做的事情是可能的。请参阅下面的zag2art's answer
      • 我不知道您是否尝试重现场景或测试代码,但不应将此 Ans 标记为答案,因为 @zag2art 的解决方案显然有效,这表明现代浏览器确实允许问题中问了什么。
      猜你喜欢
      • 2012-12-21
      • 1970-01-01
      • 2021-11-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-11-18
      • 2017-08-30
      相关资源
      最近更新 更多