Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/401.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/file/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 将文件(JS对象)添加到输入类型=";文件";_Javascript_File_Fileapi_Html Input - Fatal编程技术网

Javascript 将文件(JS对象)添加到输入类型=";文件";

Javascript 将文件(JS对象)添加到输入类型=";文件";,javascript,file,fileapi,html-input,Javascript,File,Fileapi,Html Input,我需要一种将文件对象添加到文件输入字段的方法 请注意,我不想查看文件字段的。(这是一种安全风险,…我知道) 我已经拥有文件本身(及其所有内容!) 我正在创建文件对象,如下所示: canvas.toBlob(function(blob) { var file = new File([blob], 'file.png'); // and now I want to add MY File to the input here }); 请不要告诉我如何上传文件,我知道XMLHttpReques

我需要一种将文件对象添加到文件输入字段的方法

请注意,我不想查看文件字段的。(这是一种安全风险,…我知道)
我已经拥有文件本身(及其所有内容!)

我正在创建文件对象,如下所示:

canvas.toBlob(function(blob) {
  var file = new File([blob], 'file.png');
  // and now I want to add MY File to the input here
});
请不要告诉我如何上传文件,我知道XMLHttpRequest级别2。我想将文件上传到外部网站(可能使用用户脚本或类似的东西)

那么,我怎样才能做到这一点呢? 或者如果不可能:为什么我不能将我实际拥有的文件(因为我在浏览器中创建了它(作为虚拟文件,它甚至不存在于用户文件系统中))添加到我也拥有的输入字段中?(从技术上讲,输入字段可以是我自己的,这在这里并不重要)

不,你不能

摘自:

似乎要从drop事件中获取文件对象并将其分配给元素。不幸的是,你不能这样做。只有用户可以选择文件;您无法动态更改将上载的文件,因为浏览器出于安全原因拒绝使用JavaScript


可能重复yes…因为如果允许通过编程更改
输入文件
,web开发人员可以轻松窃取用户的文件。。