【发布时间】:2019-09-14 07:52:31
【问题描述】:
我正在尝试上传图像,然后将所述图像的下载位置存储在 val.昨天它可以 100% 完美运行,没有任何问题。我没有更改任何代码,我现在无法上传图片,现在它说
上传图片失败 用户无权访问该对象。
我检查了每个堆栈溢出/Reddit 帖子的相同主题,他们都说要将我的规则的权限更改为公开。
我的规则设置为公开
service firebase.storage {
match /b/savephoto-a1cc3.appspot.com/o {
match /{allPaths=**} {
allow read, write;
}
}
}
这是上传图片的实现。
val ref = FirebaseStorage.getInstance().getReference("/images/profilePictures/$filename")
//Stores File
ref.putFile(selectedPhoto!!)
.addOnSuccessListener {
Log.d("main", "Succesfully Uploaded Image ${it.metadata?.path}")
//Gets Download Link for Image
ref.downloadUrl.addOnSuccessListener {
val downloadImg = it.toString()
Log.d("main", "Profile Picture Location $it")
//Create User
createUser(downloadImg, age, gender, firstName, lastName)
}
}
.addOnFailureListener {
Log.d("main", "Failed to Upload Image ${it.message}")
}
}
仍然不确定我为什么会得到一个
上传图片失败 用户无权访问该对象。
即使规则设置为公开并且我的代码看起来非常好。 昨天可以正常上传图片,但现在我收到了这个错误。
【问题讨论】:
-
这是“/b/savephoto-a1cc3.appspot.com/o”你的路径你确定。我想你从这里得到代码 stackoverflow.com/questions/38671444/… 。所以你需要从firebase检查你的应用程序ID
标签: android firebase kotlin firebase-storage firebase-security