javascript - 如何不使用多部分编码上传文件? (可能使用八位位组或其他东西)

标签 javascript html http

我们希望我们的 Web 应用程序能够从浏览器上传文件(用户以标准方式选择文件),但无论是否使用 ajax,并且希望文件占据 POST 的整个正文,而没有其他内容body(即我们并不真正想要所有其他字段,只需要文件内容)

我读到了一些关于可能有一种方法可以使用 ajax 来做到这一点的内容,但似乎找不到与 application/octect-stream 或其他内容相关的任何信息。

以前有人这样做过吗?html/javascript 是什么样子才能正确工作,这样这也是一个分块文件,而不是作为一个巨大的东西发送到网络服务器。

html 5 中是否有某些内容可以提供帮助。

谢谢, 院长

最佳答案

执行此操作非常简单,只需将 blob/文件作为参数传递给 XHR 实例上的 send 方法,例如:

function uploadFile(blobOrFile) {
    var xhr = new XMLHttpRequest();
    xhr.open("POST", "http://mydomain.com/upload", true);
    xhr.send(blobOrFile);
}

请注意,这仅适用于文件 API 浏览器(即不适用于 IE9 及更早版本)

关于javascript - 如何不使用多部分编码上传文件? (可能使用八位位组或其他东西),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20334444/

相关文章:

delphi - 如何从当前 Windows 语言环境获取 HTTP 字符集名称?

php - 将ajax数据发布到mysql中

javascript - 使用javascript在listview中仅显示某些列表项

css - 如何在 Tumblr 上的非永久链接页面上隐藏 <div>

javascript - jquery提交表单重定向

node.js - "Error: socket hang up"与 express

java - 如何从 JSP 获取图像 blob 到 JavaScript?

javascript - html 中的自毁按钮

javascript - 准确地在提交点击的位置创建一个 div?

rest - Wildfly,重启服务器组