【问题标题】:Fake file uploading with javascript使用 javascript 上传假文件
【发布时间】:2014-03-05 15:21:58
【问题描述】:

我想伪造一个文件上传表单,例如

<form action=upload.php method=post enctype='multipart/form-data'>
   <input type=file name=userfile>
   <input type=submit>
</form>

通常您必须单击userfile 对象并选择一个文件。

现在,可以伪造input 的内容吗?我的意思是,我已经在 javascript 中对文件内容进行了编码,并且我不希望用户交互,只需在浏览器尝试读取“假文件”时使用预定义的值

这可能吗?

我已经尝试过使用 HTML5 进行跨域 AJAX 发布,但这需要在服务器端启用 CORS。

【问题讨论】:

标签: javascript internet-explorer firefox chromium


【解决方案1】:

所有文件上传都必须由用户启动,以防止恶意软件发送未经授权的文件。许多人需要对文件进行 base-64 编码并通过 AJAX + POST 发送。

见:Send a file with XmlHttpRequest: Streaming?

【讨论】:

    【解决方案2】:

    你不能在 javascript 中做到这一点。出于安全原因,type="file" 的输入是只读的。

    我建议您将文件编码为 base64 并将其内容放入隐藏输入中。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-11-10
      • 2013-07-07
      • 2013-09-12
      • 2018-01-05
      • 1970-01-01
      • 1970-01-01
      • 2014-04-13
      相关资源
      最近更新 更多