使用 Fineuploader 通过 SSL/HTTPS 上传文件到 S3

Uploading files to S3 via SSL/HTTPS using Fineuploader

我已经设置了 Fineuploader 来将文件上传到我正在处理的项目的 S3 存储桶中,一切都很顺利 运行...直到我设置了 SSL。 (应用程序在 Docker 内运行,并为此添加了 Nginx + LetsEncrypt)

虽然应用程序的其余部分工作正常,但通过 Fineuploader 上传失败并显示错误消息:

Mixed Content: The page at 'https://example.com/upload' was loaded over HTTPS, but requested an insecure XMLHttpRequest endpoint 'http://MYBUCKETNAME.amazonaws.com/'. This request has been blocked; the content must be served over HTTPS.

我查看了 Fineuploader 的文档,但除了提到 "SSL is also supported" under request>endpoint [https://docs.fineuploader.com/api/options-s3.html#request].

之外,没有看到任何涵盖 HTTPS 请求的选项

(还有一个功能建议似乎可以解决这个问题,但由于某种原因被撤回了 - https://github.com/FineUploader/fine-uploader/issues/1119

我试过在客户端上传器中的端点前面添加 "https://",但这也没有用。

var uploader = new qq.s3.FineUploader({
     request: {
         endpoint: 'https://MYBUCKETNAME.amazonaws.com',
         accessKey: 'TRALALALALALA',
      },
...

这里有我遗漏的选项吗?是否需要更改签名功能才能正常工作?

由于这是向 S3 存储桶的上传,端点策略是否取决于存储桶的权限(在这种情况下,您如何启用通过 https 上传?)

我刚刚解决了这个问题,结果证明这是一个 Docker 问题...由于某种原因,尽管标签正确,但图像没有更新。我已经尝试通过将“https://”添加到它的前面来更改端点,它现在可以工作了。

(类似于中的推荐)

希望这对其他人有所帮助,因为 Fineuploader 没有说清楚。