Jquery 文件上传图片调整大小不适用于某些图片

Jquery File Upload Image Resize does not work for certain images

我正在使用 blueimps jquery 文件上传器。总而言之,一切都很好。 但是最近我发现图片调整功能没有调整某些图片的大小,我不知道为什么。

以下是上传者的选项:

$('#fileupload_edit_previewimage').fileupload({
    autoUpload: false,
    maxNumberOfFiles: 1,
    // Enable image resizing, except for Android and Opera,
    // which actually support image resizing, but fail to
    // send Blob objects via XHR requests:
    disableImageResize: /Android(?!.*Chrome)|Opera/
        .test(window.navigator.userAgent),
    imageMaxWidth: 600,
    imageMaxHeight: 400,
    imageCrop: false, // Force cropped images
    maxFileSize: 100000000000 // 100GB
})

这是从未调整大小的图像:

https://uploadfiles.io/213u3

这是一个 19MB 的 JPG。

这是一张有效的图片:

https://ufile.io/smlpk

这是一个 1MB 的 JPG。

我试过很多不同的图像和类型,大多数都可以,但有些不行。

知道问题出在哪里吗?

编辑

客户端上传。它直接上传到 S3,服务器只创建了一个预先设计的 post 并签署了请求。

我注意到更大的图像都失败了,所以有一个规律。

我现在正在寻找解决方案。

编辑

我现在正在试验 jquery 文件上传器的预览 canvas,似乎甚至没有为大图像创建 canvas。 (想法是使用 canvas 进行上传)。

我发现了问题。客户端拒绝加载大图,因为默认值太低,documentation

解决方案是增加loadImageMaxFileSize,在我的例子中:

loadImageMaxFileSize: 100000000000, // 100GB