node批量删除七牛云上的文件
  KvevbRuwqC1X 2023年11月02日 28 0


const qiniu = require('qiniu')
const {
  getQiNiuKey,
} = require('./tools')

//#region 七牛云
const { accessKey, secretKey } = getQiNiuKey()
const mac = new qiniu.auth.digest.Mac(accessKey, secretKey)
let config = new qiniu.conf.Config()
// 空间对应的机房
config.zone = qiniu.zone.Zone_z1

const putPolicy = new qiniu.rs.PutPolicy({
  //scope: 'xutongbao-video',
  scope: 'xutongbao-static',
  returnBody: `{
    "code": 200,
    "data": {"key":"$(key)","hash":"$(etag)","fsize":$(fsize),"bucket":"$(bucket)","file":"$(fname)"},
    "message": "成功"
  }`,
  expires: 3600 * 24 * 30, //一个月
})

const uploadToken = putPolicy.uploadToken(mac)
let formUploader = new qiniu.form_up.FormUploader(config)
let putExtra = new qiniu.form_up.PutExtra()
putExtra.checkCrc = false

let bucketManager = new qiniu.rs.BucketManager(mac, config);

module.exports = {
  uploadToken,
  formUploader,
  putExtra,
  bucketManager
}

//#endregion
const sdCdnDelete = async (req, res) => {
  let { uid } = req.body

  let bucket = 'xutongbao-static'

  let deleteOperations = [
    qiniu.rs.deleteOp(bucket, 'img/123.jpg'),
  ]
  bucketManager.batch(deleteOperations, function(err, respBody, respInfo) {
    if (err) {
      console.log(err);
      //throw err;
    } else {
      // 200 is success, 298 is part success
      if (parseInt(respInfo.statusCode / 100) == 2) {
        respBody.forEach(function(item) {
          if (item.code == 200) {
            console.log(item.code + "\tsuccess");
          } else {
            console.log(item.code + "\t" + item.data.error);
          }
        });
      } else {
        console.log(respInfo.deleteusCode);
        console.log(respBody);
      }
    }
  });
  const now = Date.now()
  const editObj = {
    updateTime: now,
  }
  let { editStr } = getSqlUpdateStr({ editObj })
  const err = await runSql(`UPDATE sd SET ${editStr} WHERE uid = '${uid}'`)
  if (err) {
    res.send({
      code: 400,
      data: err,
      message: '编辑失败',
    })
  } else {
    await refreshRedis({ tableName: 'sd' })
    res.send({
      code: 200,
      data: {
        uid,
      },
      message: '编辑成功',
    })
  }
}

 

node批量删除七牛云上的文件_ide

node批量删除七牛云上的文件_Mac_02

node批量删除七牛云上的文件_Mac_03

 https://developer.qiniu.com/kodo/1289/nodejs#rs-batch-delete

node批量删除七牛云上的文件_前端_04

【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月08日 0

暂无评论

推荐阅读
  E929ZvlRxyUs   2023年12月23日   38   0   0 前端url前端URL
KvevbRuwqC1X