删除内部所有图像后立即删除一个空文件夹

编程入门 行业动态 更新时间:2024-10-06 10:42:19

删除内部所有图像后立即删除一个空<a href=https://www.elefans.com/category/jswz/34/1771393.html style=文件夹"/>

删除内部所有图像后立即删除一个空文件夹

我正在编写一个功能来删除我的应用程序中的用户,该功能由NodeJS Mongoose和Cloudinary提供支持,我想删除用户已上传到其个人文件夹和文件夹本身的所有图片。这是我编写的用于删除单个用户的代码(请注意,用户名是其文件夹的名称):

module.exports = (id, callback) => {
    User.findByIdAndDelete(id, function (err, user) {
        if (err)
            return callback(err);

        if (!user)
            return callback(null, null);


        cloudinary.api.delete_resources_by_prefix(`${user.username}/`, function (err) {
            if (err && err.http_code !== 404) {
                return callback(err);
            }

            cloudinary.api.delete_folder(`${user.username}`, function (error, result) {
                if (error && error.http_code !== 404) {
                    return callback(error);
                }
                return callback(null, `${user.username}`);
            });
        });
    });
};

问题是,当我运行它时,第二个API请求答复此错误:

{ message: 'Folder is not empty', http_code: 400 }

这显然是不正确的,因为我已经删除了上面API调用中的文件。我还通过cloudinary的UI检查了第一个调用的正确行为,除了最后一个调用之外,其他所有操作都正常。所以我要问的是:

  1. 有一个未公开的方法可以在一个调用中删除文件夹及其内容?
  2. 如果没有,如何在不出现此错误的情况下做到这一点?
  3. 有没有不涉及文件夹的解决方法?我看过标签,但是不知道是否会导致性能下降。
回答如下:您是否启用了备份?您可以在媒体库中搜索已删除的图像吗?您可以通过使用bulk delete option中的前缀删除(文件夹名称)来删除文件夹。这是删除空文件夹的脚本:

更多推荐

删除内部所有图像后立即删除一个空文件夹

本文发布于:2024-05-13 08:40:24,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1759304.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:文件夹   图像

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!