【问题标题】:Fill in a file upload input with file from javascript使用来自 javascript 的文件填写文件上传输入
【发布时间】:2015-06-17 00:27:09
【问题描述】:

所以我正在使用 recorder.js 在我的网页上录制音频,它从麦克风录制音频,然后在 javascript 中创建一个 wav 文件。我有这个代码来创建一个 blob 并将文件下载到用户的计算机:

// final binary blob
var blob = new Blob ( [ view ], { type : 'audio/wav' } );

// save file locally
console.log('Handing off the file now...');
var url = (window.URL || window.webkitURL).createObjectURL(blob);
var link = window.document.createElement('a');
link.href = url;
link.download = 'output.wav';
var click = document.createEvent("Event");
click.initEvent("click", true, true);
link.dispatchEvent(click);

我想知道是否有办法将此文件放入 html 文件上传表单输入中,而不是将其下载到用户的计算机上。我想这样做,以便我可以轻松地访问我的 asp.net 服务器端代码中的文件。感谢您的帮助。

【问题讨论】:

    标签: javascript asp.net file-upload blob


    【解决方案1】:

    不,不可能初始化<input type="file">。这在任何已知的浏览器中都没有实现,因为它可能会导致安全问题。

    想象一个邪恶的开发者做了这样的事情:

    <input type="file" value="/etc/passwd" style="display: none;">
    

    当无知的用户提交表单时,文件将被上传并暴露给攻击者。

    【讨论】:

      猜你喜欢
      • 2013-03-23
      • 1970-01-01
      • 1970-01-01
      • 2017-03-01
      • 2011-03-27
      • 1970-01-01
      • 2010-12-07
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多