# #android #firebase #firebase-storage
Вопрос:
E/StorageException: StorageException has occurred.
Object does not exist at location.
Code: -13010 HttpResult: 404
2021-09-13 00:52:49.705 20328-20869/com.dishanamdev.advibe E/StorageException: { "error": { "code": 404, "message": "Not Found. Could not get object", "status": "GET_OBJECT" }}
java.io.IOException: { "error": { "code": 404, "message": "Not Found. Could not get object", "status": "GET_OBJECT" }}
и мои правила безопасности в хранилище firebase таковы
rules_version = '2';
service firebase.storage {
match /b/{bucket}/o {
match /{allPaths=**} {
allow read, write: if request.auth != null;
}
}
}
Мой java-код. Здесь я не в состоянии понять, что писать вместо b
того, чтобы и что писать вместо bucket
написанного firebase storage rules
.
Не могли бы вы, пожалуйста, сказать мне, что писать в этих двух вышеупомянутых местах по сравнению с моим java-кодом?
Я пытался писать user
вместо b
и currentID
вместо bucket
, но это не сработало.
Таким образом :
rules_version = '2';
service firebase.storage {
match /user/{currentID}/o {
match /{allPaths=**} {
allow read, write: if request.auth != null;
}
}
}
public void onStart() {
super.onStart();
FirebaseUser user = FirebaseAuth.getInstance().getCurrentUser();
String currentId = user.getUid();
DocumentReference reference;
FirebaseFirestore firestore = FirebaseFirestore.getInstance();
reference = firestore.collection("user").document(currentId);
reference.get()
.addOnCompleteListener(new OnCompleteListener<DocumentSnapshot>() {
@Override
public void onComplete(@NonNull Task<DocumentSnapshot> task) {
if(task.getResult().exists()){
String nameResult = task.getResult().getString("name");
String bioResult = task.getResult().getString("bio");
nameET.setText(nameResult);
bioET.setText(bioResult);
}else{
Intent intent = new Intent(getActivity(),CreateProfile.class);
startActivity(intent);
}
}
});}
Пожалуйста, помогите мне.
Комментарии:
1. Это не проблема с вашими правилами безопасности. Файл, который вы пытаетесь получить, не существует. Пожалуйста, убедитесь, что путь указывает на допустимый объект в вашем хранилище
2. Не могли бы вы предоставить мне какую-либо ссылку на документацию, по которой я могу узнать, как написать правильный путь?
3. ошибка четко указывает : код»: 404″, «сообщение»: «Не найдено. Не удалось получить объект. пусть ваш путь будет неправильным, как упоминал выше Фрэнк.
4. Пожалуйста, покажите свой код, который выдает ошибку, и как вы пытаетесь получить объект из хранилища
5. Я прямо сейчас это сделал, сэр. Пожалуйста, проверьте один раз и, пожалуйста, помогите.
Ответ №1:
Прямо сейчас я решил эту проблему. Эта ошибка появляется, когда мы не загружаем объект, содержащий все данные (включая фотографии, тексты и т.д.) в firebase.Поэтому, если у кого-то еще возникает та же проблема then must check your code again
в классе файла java, в котором вы создали ссылку на хранилище firebase, ссылку на базу данных, ссылку на документ