限制用户可以在 Parse 上存储的图像数量
Posted
技术标签:
【中文标题】限制用户可以在 Parse 上存储的图像数量【英文标题】:Limit the number of images a user can store on Parse 【发布时间】:2016-09-13 11:53:28 【问题描述】:我目前正在开发一个 ios 应用程序,用户将能够将图像上传到我的 Parse 服务器,因为他们可以将任意数量的图像上传到数据库,但我想限制他们的上传,比如说分配 1gb给每一位用户。
我还希望能够解除对特定用户的限制,以便某些人能够拥有比其他人更多的存储空间。
任何帮助将不胜感激。
【问题讨论】:
【参考方案1】:经过一些快速搜索后,我没有看到任何直接的方法。我会做的是:
-
为名为@987654323@ 的
PFUser
创建一个新字段。这将是用户能够拥有的兆字节数。
创建一个接受图像和图像文件大小的新 Cloud Code 函数。
当你去上传时,你可以通过关注this answer找到文件大小以兆字节为单位。
将图像数据和文件大小传递给您的新函数。
在您的新功能中检查用户是否有足够的可用空间来保存新图像。如果是这样,请保存并更新 usedSpace
参数。如果不是,则返回错误。
你的云代码函数看起来像这样(伪代码):
// For example:
Parse.Cloud.define("saveImageWithSize", function(request, response)
// Grab var's from params
var imageData = request.params.imageData;
var imageSize = request.params.imageSize;
if user has enough free space
// save the imageSize
// update the `usedSpace` field
response.success("success");
else user does not have enough space
response("not enough space");
);
然后你会像这样从你的应用程序中调用它:
PFCloud.callFunctionInBackground("saveImageWithSize", withParameters: ["imageData" : yourImageData, "imageSize" : youImageSize]) (response, error) in
if let err = error
print(err)
else
print(complete)
希望这会有所帮助。
【讨论】:
以上是关于限制用户可以在 Parse 上存储的图像数量的主要内容,如果未能解决你的问题,请参考以下文章
我可以与 UIActivityViewController 共享的图像数量是不是有限制?