Firebase存储错误中的权限被拒绝[重复]
Posted
技术标签:
【中文标题】Firebase存储错误中的权限被拒绝[重复]【英文标题】:permisson denied in firebase storage error [duplicate] 【发布时间】:2021-12-30 21:57:56 【问题描述】:我有这样的错误:
java.io.IOException: "error": "code": 400, "message": "Permission denied。请通过访问 Firebase 控制台中的存储选项卡为您的存储桶启用 Firebase 存储,并确保您拥有足够的权限来正确配置资源。”
但是,我这里的存储规则:
service firebase.storage
match /b/luu-hinh-voi-firebase.appspot.com/o
match /allPaths=**
allow read, write;
我认为我的代码是正确的,但错误仍然出现,这是我的代码:
Calendar calendar=Calendar.getInstance();
StorageReference mountainsRef = storageRef.child("image"+calendar.getTimeInMillis()+".png");
// Get the data from an ImageView as bytes
imgHinh.setDrawingCacheEnabled(true);
imgHinh.buildDrawingCache();
Bitmap bitmap = ((BitmapDrawable) imgHinh.getDrawable()).getBitmap();
ByteArrayOutputStream baos = new ByteArrayOutputStream();
bitmap.compress(Bitmap.CompressFormat.PNG, 100, baos);
byte[] data = baos.toByteArray();
UploadTask uploadTask = mountainsRef.putBytes(data);
uploadTask.addOnFailureListener(new OnFailureListener()
@Override
public void onFailure(@NonNull Exception exception)
Toast.makeText(MainActivity.this, "Failed !", Toast.LENGTH_SHORT).show();
).addOnSuccessListener(new OnSuccessListener<UploadTask.TaskSnapshot>()
@Override
public void onSuccess(UploadTask.TaskSnapshot taskSnapshot)
Log.d("hivu", taskSnapshot.getUploadSessionUri()+"");
Toast.makeText(MainActivity.this, "Success !", Toast.LENGTH_SHORT).show();
);
请帮我解决这个问题,我不知道错误来自哪里?
【问题讨论】:
我不久前链接了一个解决方案。如果这不能为您解决问题,您能否reach out to Firebase support 获得个性化的故障排除帮助? 我已经尝试过您的解决方案,但它根本不起作用 很抱歉听到@QuốcVũ。在这种情况下,请联系 Firebase 支持,以便他们查看。我们最近看到了一些类似的案例,解决方法是使用另一个 (gmail) 帐户。但这当然不应该是正确的解决方案,所以希望我们的支持团队能找到这个问题的根本原因。 我将联系 Firebase 支持人员,了解导致此错误的根本原因。顺便说一句,谢谢你的帮助 firebaser here 如果这是您在过去几天创建的项目,您可能受到我们项目创建中的错误的影响。如果是这样,则该问题已得到解决,因此新项目将不再受到影响。要修复您现有的项目,请查看此处的步骤:***.com/a/70060240 【参考方案1】:您很可能需要更新您的存储规则,如下所示 -
service firebase.storage
match /b/luu-hinh-voi-firebase.appspot.com/o
match /allPaths=**
allow read, write: if true;
【讨论】:
这个我试过了,但是不行 你能试试这个吗? -rules_version = '2'; service firebase.storage match /b/bucket/o match /allPaths=** allow read, write: if true;
还是有这个错误:((
它应该可以工作。您可以重新检查您的项目 firebase 配置吗?只是为了重新验证配置是否正确,并且您正在控制台上的同一个项目中进行更改。以上是关于Firebase存储错误中的权限被拒绝[重复]的主要内容,如果未能解决你的问题,请参考以下文章
Firebase 存储安全规则 400 错误问题“权限被拒绝。无法访问存储桶 xxxxx-****.appspot.com”
Firebase 存储错误:权限被拒绝。无法访问存储桶 my-bucket-name
与 Firebase DatabaseError 一起颤动:权限被拒绝 [重复]