【问题标题】:How to upload images to AWS S3 with Ckeditor5如何使用 Ckeditor5 将图像上传到 AWS S3
【发布时间】:2020-12-23 18:06:02
【问题描述】:

我正在尝试从 CkEditor5 将图像上传到 s3 存储桶。我的前端建立在 vue 上,后端建立在 NodeJs 上。图像的上传按预期工作,因为我可以看到图像已正确保存到 s3 存储桶。但是我对存储桶是否应该公开感到困惑?

CkEditor 如何处理图片上传?

ckEditor 使用一个简单的上传适配器,它使用自己的内置适配器来启用图像上传功能。当图像被删除/复制粘贴到 ckEditor 时,它会向我的后端 NodeJs 服务器发出一个 http POST 请求,然后服务器会调用 S3 来上传该图像(直到此时一切都按预期工作)。

现在为了在 CkEditor5 中嵌入图像,服务器应该使用一个 URL 属性作为 JSON 响应,如下所示,以便 CkEditor 可以获取它并在编辑器中显示。

{
  url: url-path-of-image //full path of image in s3 bucket
}

这是我很困惑的地方,需要一些指示。

问题 1: 我应该公开吗?如果是,那么我该如何处理安全问题,将其公开将使任何人都可以访问。 如果我可以通过密钥/秘密访问它,我该怎么做?

问题 2:

这与问题#1有关

如果我将其公开,那么问题#2 将不会成为问题。但是,如果在这种情况下不允许我将其公开,我将如何在普通 div 元素中显示图像?稍后我需要在 div 中显示 CkEditor 的内容,并在 v-html 属性中显示 html 解析含义。

任何建议或指示都会很有帮助。非常感谢您花时间阅读问题。

【问题讨论】:

    标签: amazon-s3 file-upload ckeditor ckeditor5


    【解决方案1】:

    我不确定我是否正在寻找解决方案。我可以说它与 AWS S3 中的签名 URL 有关。您将存储桶保持私有,将图像上传到 S3 并在需要在前端向用户显示图像时生成签名的 url。

    如果您了解有关正确实施的更多信息,请告诉我。

    【讨论】:

    • 其实我有,我会发布一个答案。
    • @Saroj 你有没有找到任何解决方案,为什么 ckeditor5 不显示图像但上传很好
    • 如果您的图像是公共 s3 存储桶,那么它应该显示图像。
    猜你喜欢
    • 2018-05-12
    • 1970-01-01
    • 2018-01-19
    • 2018-03-02
    • 1970-01-01
    • 2020-08-07
    • 1970-01-01
    • 2015-04-18
    • 1970-01-01
    相关资源
    最近更新 更多