【问题标题】:Firebase Storage Permission unknown error with React Native Image Upload使用 React Native Image Upload 的 Firebase 存储权限未知错误
【发布时间】:2018-05-14 05:39:57
【问题描述】:

实际演示视频:https://www.youtube.com/watch?v=bYGi71am_tU

Firebase 存储规则:

service firebase.storage {
  match /b/{bucket}/o {
    match /{allPaths=**} {
      allow write: if request.resource.size < 5 * 1024 * 1024
                   && request.resource.contentType.matches('image/.*');
    }
  }
}

我的 blob 图像:

Blob {
   "_data": Object {
     "blobId": "c526586a-0481-48ce-a77b-cc589052a443",
     "lastModified": 0,
     "name": "bbf91dba-8597-43d9-82b7-7a81887c3e5c.jpg",
     "offset": 0,
     "size": 32653,
     "type": "image/jpeg",
   },
}

Firebase 存储错误:

FirebaseStorageError {
   "code_": "storage/unknown",
   "column": 31,
   "line": 17422,
   "message_": "Firebase Storage: An unknown error occurred, please check the error payload for server response.",
   "name_": "FirebaseError",
   "serverResponse_": "{
   \"error\": {
     \"code\": 400,
     \"message\": \"Permission denied. Could not access bucket crna-app-01.appspot.com. Please enable Firebase Storage for your bucket by visiting the Storage tab in the Firebase Console and ensure that you have sufficient permission to properly provision resources.\"
   }
 }",
   "sourceURL": "http://10.1.0.6:19001/node_modules/expo/AppEntry.bundle?platform=android&dev=true&minify=false&hot=false&assetPlugin=%2FUsers%2Fajinkyaborade%2Fprojects%2Fnative-apps%2Fmy-react-redux%2Fnode_modules%2Fexpo%2Ftools%2FhashAssetFiles",
 }

这是我的 Expo RN 应用文件中的实际功能

async function uploadImageAsync(uri, uid, firebase) {

  const response = await fetch(uri);

  const blob = await response.blob();

  const ref = firebase
    .storage()
    .ref('users/' + uid)
    .child(uuid.v4());

  const snapshot = await ref.put(blob); // actual Firebase error comes here
  return snapshot.downloadURL;
}

非常感谢任何帮助:)

【问题讨论】:

  • 这是上面的 Firebase 存储错误消息:“权限被拒绝。无法访问存储桶 crna-app-01.appspot.com。请通过访问存储桶中的存储选项卡为您的存储桶启用 Firebase 存储Firebase 控制台,并确保您有足够的权限来正确配置资源。”此消息对您有意义或可操作吗?
  • @DougStevenson 感谢您的回复。我以前使用相同的方法上传文件,但突然停止工作。是 存储已启用。我什至添加了RULES
  • 请帮助我们理解“突然”。请编辑问题以包括之前的工作不再工作*您发布的内容没有变化”。
  • 更新问题@DougStevenson
  • 我尝试使用 RULES allow write; 仍然是同样的问题

标签: javascript firebase react-native firebase-storage


【解决方案1】:

这是 Firebase 存储管理员的问题。

-- 添加firebase-storage@system.gserviceaccount.com 作为存储ADMIN 完成

【讨论】:

猜你喜欢
  • 1970-01-01
  • 2018-11-09
  • 2020-03-17
  • 2021-12-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-06-01
  • 1970-01-01
相关资源
最近更新 更多