开发指南

删除文件

最近更新时间:2020-10-19 17:13:10

默认情况下,只有通过了 CloudBase 身份验证 的用户才可以向云存储空间上传文件,因此在用户端(如 Web、Flutter 等)删除文件时需先进行登录认证。

说明:

  • 单次调用最多可以删除 50 个文件,更多需分批处理;
  • 默认情况下,只有该文件的上传创建者和管理员才有权删除相应的文件,不允许 A 用户删除 B 用户的文件;
  • 您也可以使用 自定义安全规则,为云存储设置更宽松或更严格的读写权限。

Web

//第一步,引入 Web SDK,
import tcb from "@cloudbase/js-sdk";

//第二步,初始化
const app = tcb.init({
  env: "your-env-id"
});

//第三步,登录认证,下面非完整代码,需选择登陆方式,具体可以参考【快速开始】-【登录与用户案例】
const auth = app.auth({
  persistence: "local" //用户显式退出或更改密码之前的30天一直有效
});

app
  .deleteFile({
    fileList: ["cloud://a/b/c", "cloud://d/e/f"]
  })
  .then((res) => {
    console.log(res.fileList);
  });

使用 SDK 调用 deleteFile 方法可以删除云存储空间单个或多个指定文件。
微信小程序

//需先使用 wx.cloud.init 初始化,小程序端无需再引入 SDK ,且免鉴权
wx.cloud
  .deleteFile({
    fileList: ["cloud://a/b/c", "cloud://d/e/f"]
  })
  .then((res) => {
    console.log(res.fileList);
  });

Node.js

const tcb = require("@cloudbase/node-sdk");
const app = tcb.init();

app
  .deleteFile({
    fileList: ["cloud://a/b/c", "cloud://d/e/f"]
  })
  .then((res) => {
    console.log(res.fileList);
  });