【发布时间】:2020-03-20 14:01:55
【问题描述】:
我有一个 Blob 对象,它是一个图像,我正在尝试转换为文件对象,但它在 MS edge 版本 41 中显示错误。我在第一次两次尝试中使用 formdata
尝试 1
fd.set('file', blobObj, fileName);
return (fd.get('file'));
这导致了一个错误
对象不支持这个属性或方法'set'
尝试 2
我用 append 替换了 set,然后我得到了这个
对象不支持这个属性或方法'get'
尝试 3
我用一个看起来像这样的新逻辑完全替换了 formdata
let fileObject = new File([u8arr], fileName, { type: mime });
我收到一个错误提示
对象不支持此操作
还有其他方法可以使用吗?可以直接使用blob作为文件吗?
【问题讨论】:
-
在我有限的测试中,Edge 上的
new FormData()确实支持.set、.append和.get方法。 -
@TKol 它支持新的 44 版本,在 41 和 42 版本中它给了我错误
-
你为什么还要
get呢?您是否尝试过将 formData 提交到 post 端点? -
这能回答你的问题吗? How to convert Blob to File in JavaScript
-
@TKol 将 formData 直接发送到服务器也会使其作为 formdata 接收,而不是作为文件接收
标签: javascript file multipartform-data microsoft-edge form-data