Firebase
에 일부 이미지를 저장했으며 다운로드하려고 할 때 다음 오류가 발생합니다 : E/StorageException: StorageException has occurred. User does not have permission to access this object. Code: -13021 HttpResult: 403
. 나는 Google 인증도 사용하고 있습니다.규칙을 공개로 설정 한 후에도 'StorageException'이 발생합니다. 자세한 내용을 참조하십시오
service firebase.storage {
match /b/appname-e2a32.appspot.com/o {
match /{allPaths=**} {
allow read, write;
}
}
}
은 알려 주시기 바랍니다 : 여기에
FirebaseStorage firebaseStorage = FirebaseStorage.getInstance();
storageReference = firebaseStorage.getReferenceFromUrl("gs://appname-e2a32.appspot.com").child("hImage");
storageReference.getBytes(Long.MAX_VALUE).addOnSuccessListener(new OnSuccessListener<byte[]>() {
@Override
public void onSuccess(byte[] bytes) {
// Use the bytes to display the image
ByteArrayOutputStream baoStream = new ByteArrayOutputStream();
bytes = baoStream.toByteArray();
bmap = BitmapFactory.decodeByteArray(bytes, 0, bytes.length);
}
}).addOnFailureListener(new OnFailureListener() {
@Override
public void onFailure(@NonNull Exception exception) {
// Handle any errors
Toast.makeText(getBaseContext(), exception.getMessage(), Toast.LENGTH_LONG).show();
}
});
보안 규칙을이다 : 나는 그것을 다운로드하려고 방법
다음
StorageReference storageReference = firebaseStorage.getReferenceFromUrl("gs://appname-e2a32.appspot.com").child("hImage");
UploadTask uploadTask = storageReference.putBytes(data);
uploadTask.addOnFailureListener(new OnFailureListener() {
@Override
public void onFailure(@NonNull Exception exception) {
Toast.makeText(getBaseContext(), exception.getMessage(), Toast.LENGTH_SHORT).show();
// Handle unsuccessful uploads
}
}).addOnSuccessListener(new OnSuccessListener<UploadTask.TaskSnapshot>() {
@Override
public void onSuccess(UploadTask.TaskSnapshot taskSnapshot) {
// taskSnapshot.getMetadata() contains file metadata such as size, content-type, and download URL.
Uri downloadUrl = taskSnapshot.getDownloadUrl();
savingHelpRequest.dismiss();
Toast.makeText(getBaseContext(), "image uploaded", Toast.LENGTH_SHORT).show();
}
});
가있다 : 여기
내가 이미지를 업로드하고 방법 이 오류를 제거하고 이미지를 성공적으로 다운로드하려면 어떻게해야합니까?
Firebase 인증을 사용하고 있습니까? 아니면 인증되지 않은 액세스를 허용하도록 기본 저장소 보안 규칙을 변경 했습니까? –
보안 규칙에 대한 편집 된 질문을 참조하십시오. 그렇습니다. Google 인증을 사용하고 있습니다. –
6.0에 대해 컴파일하고 있습니까? –