【问题标题】:Firebase Storage 403 Error on deleteFirebase 存储 403 删除时出错
【发布时间】:2017-02-03 06:59:04
【问题描述】:

我正在使用以下规则:

service firebase.storage {
  match /b/xxxxxxx.appspot.com/o {
match /proUsers/{userId}/{allPaths=**} {
      allow read, write: if request.auth.uid == userId && request.resource.size < 2 * 1024 * 1024 && request.resource.contentType.matches('image/.*'); 
    }
  }
}

这就是我创建用于保存的 ref 的方式:

storageRef.child(`proUsers/${userId}/${prizeData.title}_${prizeData.createdAtTimeStamp}`).put(file, metadata)

试图删除它我正在创建这个参考:

  const prizeImageRef = storageRef.child(`proUsers/${userId}/${prizeData.title}_${prizeData.createdAtTimeStamp}`)
  return prizeImageRef.delete()

我不断收到 403 错误:

代码:“存储/未授权”

Firebase 存储:用户无权访问

我的删除规则不正确吗?

【问题讨论】:

标签: firebase firebase-security firebase-storage


【解决方案1】:

是的,我认为这里的主要问题是 request.resource.contentType.matches('image/.*') 将为空,因为您不会在 DELETE 上获得 contentType。

【讨论】:

    猜你喜欢
    • 2014-03-01
    • 2018-10-24
    • 2017-06-16
    • 2017-07-22
    • 2018-01-09
    • 2018-07-09
    • 2018-11-19
    • 2017-09-28
    相关资源
    最近更新 更多