需要将文件(图像和其他文件)上传到服务器(在AWS中托管,S3用于文件) . 在获取预签名URL后将文件发送到S3时,数据上传成功但数据已损坏 . 文件上传代码

{
            var photo = {
                uri: fileURL,
            };

            var formData = new FormData();
            formData.append("file", photo);

            var xhr = new XMLHttpRequest();
            xhr.open('PUT', signedRequest);
            xhr.setRequestHeader('Content-Type', 'image/png')

            xhr.onreadystatechange = function () {
                if (xhr.readyState === 4) {
                    if (xhr.status === 200) {
                        current.uploadAssetImageLocalCache(xhr._url, assetId).then(function (uploadRes) {

                            resolve("sucess");
                        });
                    } else {
                        resolve("Fail");
                    }
                }
            };

            xhr.send(formData);
        });

上面的代码上传文件 . 但该文件已损坏 . 当我签入HexEdit时,我可以看到formdata标头被附加到文件内容中 . 上面的代码有什么问题?

--fsdE8i13_O5EhiqQbGfKjV-VsC0mKsqTU3U6m7hVTChP6zHUvgm7XKr6hy_E-BKRNDOpIa
content-disposition: form-data; name="file"
content-type: image/png

See image