如何添加规则以限制用户可以使用的最大存储空间大小?当前request.resource.size
限制用户可以上传的文件大小,但不限制用户上传到的文件夹/存储桶大小。我希望对用户可上传的所有内容设置50 MB的限制。
更新
要重新构建问题,请想象用户已经上传了5个大小为10MB的图像,这些图像总共为50 MB。现在我想限制用户上传更多文件,因为已达到最大桶大小(在我的情况下:50MB)。可能有2个文件,每个20 MB,其中一个10 MB,但必须遵守50 MB的总上限。如何为此添加规则?
更新2:
在当前的实施中,经过身份验证的用户是否可以继续上传无限量的数据,每个数据的上限为10 MB,每个文件大小都是以托管Firebase服务的用户为代价的(假设按需付费定价模式)托管时)?
答案 0 :(得分:1)
Firebase的当前设计不允许创建限制存储桶大小的规则。
更好的实施方法是在您自己的服务器上跟踪存储桶大小,并使所有firebase上传通过您的自定义服务器传递。实质上,文件会上传到您的服务器,传递存储桶大小检查,然后再次上传到AWS S3或Google Storage。
在此之后,您可以删除服务器上传,更新数据库中的元数据。
答案 1 :(得分:0)
您可以通过检查文件大小直接在客户端执行此操作。请查看具有方法大小方法的File api。您可以检查用户是否超出了文件限制,然后您可以限制他上传。