首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Cloudinary推荐使用

Cloudinary推荐使用
EN

Stack Overflow用户
提问于 2020-08-20 07:45:02
回答 1查看 310关注 0票数 0

我有一个角/反应客户端和NodeJS服务器。我的客户将上传图片到他们的个人资料,我将他们存储在云彩。很想知道这里推荐的路径是什么,因为我可以看到两种方法,每条都有正反两种

  1. 我可以将图片从网络上传到我的NodeJS服务器,然后再上传到cloudinary。
  2. 我可以让图片直接从网络上传到cloudinary,然后将URL从客户端传递给我。

方法1更安全--我控制流/上传方法2更快--文件不会通过我的服务器直接转到cloudinary

我很感激你的想法/评论/推荐的用法--因为我找不到任何的云.

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-08-20 13:23:27

以下是每种方法的Pros和Cons列表。

服务器端上传

优点:

  • 在继续上传到Cloudinary之前,您可以有自己的自定义逻辑和验证。
  • 您可以很容易地动态地应用许多附加选项和转换,而不必预先设置多个未签名的上载预置,用于每个所需的方案。
  • 它允许您在将资产上传到Cloudinary之前将其存储在自己的桶上(如果需要)。

缺点:

  • 上传需要更长时间。资产上传了两次。一次从客户端浏览器到您的服务器,第二次从您的服务器到Cloudinary。
  • 浪费服务器资源,您可能需要支付您的托管服务(即AWS) -计算,带宽,存储。

客户端上传

优点:

  • 正如您已经提到的,它更快,因为一旦客户端完成了对资产的上载,上传就完成了,而不需要从服务器第二次上传到Cloudinary。
  • 使用Cloudinary的上传Widget可选的快速实现
  • 要么你每天上传一次或者一百万次上传,这对你的服务器没有任何影响。您不需要关心处理上传队列的瓶颈,扩展您的服务器,当然,您也可以节省此操作的成本。最重要的是,当同步上传发生时,客户端的用户体验和加载时间不会受到影响。

缺点:

  • 您必须使用上载预置进行上载。您不能简单地在客户端代码中添加/修改Cloudinary的优化和转换参数,除非您对reuqest签名。生成签名应该只在服务器端进行,这样您就不会公开您的API秘密。因此,这要求您在实际发送请求之前将每个请求的有效负载发送到服务器以获取一个信号。这最终导致每一个客户端上传都依赖于您的服务器,尽管不需要处理实际的上传,这是更多的资源消耗。

您还应该注意,如果还使用Admin或Search,则不应该从客户端执行这些操作,因为这些都是需要完全凭据身份验证的管理操作。因此,如果您确实使用它,您将不可避免地需要为这些服务器端实现。

总之,没有哪一种方法最终比另一种更好。它确实取决于您的用例、需求和首选项。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63500515

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档