如何保证fineuploader发送的是流式上传请求而不是MPE请求?

How to ensure that fineuploader sends a streaming upload request instead of MPE request?

在使用 fineuploader 上传时,我没有看到任何删除参数或禁用发送参数的选项。我只能覆盖现有参数或添加新参数。有没有办法在不发送任何参数的情况下使用 PUT 进行上传?因为我已经签署了 PUT URI,所以我不需要发送参数。我尝试使用 paramsInBody = false 但这会将内容类型 "octet-stream" 添加到请求中。由于内容类型不正确,Amazon S3 returns 未经授权。

注意:我没有使用 fineuploaderS3,因为我需要上传到不同的端点。

编辑:附加信息

如果上传的不是multi-part,fine uploader正在添加以下内容header xhr.setRequestHeader("Content-Type", "application/octet-stream");

这会导致 amazon S3 出现身份验证错误。

我不想在 body 中发送默认参数,如 qquuid、qqparentsize、qqfile 和 qqfilename,因为 body 中只需要文件数据。将 paramsInBody 设置为 false 将它们发送到查询字符串中。这是有效的,因为 S3 忽略了 URL 参数,但我更希望有一个选项根本不发送它们。

默认情况下,Fine Uploader 将所有文件作为多部分编码请求的一部分发送。要指示库仅将文件作为整个请求主体发送,您必须将 the request.forceMultipart option 设置为 false

注意:无法阻止从 IE9 和更早版本发送的上传文件被非多部分编码。 在 IE9 及更早版本中上传文件的方法是通过多部分编码请求。