FIRStorageErrorDomain, у пользователя нет прав доступа к gs: // - PullRequest
0 голосов
/ 03 июня 2019

Я пытаюсь загрузить изображение в свое хранилище Firebase, однако получаю сообщение об ошибке, подтверждающее, что у меня нет разрешений, но у меня уже есть авторизованный пользователь.

Прямо перед отправкой запроса на загрузкуизображение Я распечатываю UID текущего пользователя, и это печать и показывает, что я в настоящее время аутентифицировался.

Правила доступа к моему хранилищу те же, что и для моей базы данных, и у этого же пользователя нет проблем с чтением изапись в базу данных, поэтому я не знаю, почему она не позволяет мне писать в хранилище:

service firebase.storage {
  match /b/{bucket}/o {
    match /{allPaths=**} {
      allow read, write: if request.auth.uid != null;
    }
  }
}

Это мой код, который я использую:

FirebaseUser user = await firebaseAuth.currentUser();
          print(user.uid);


          final StorageReference storageRef =
          FirebaseStorage.instance.ref().child(name + 'Logo.jpg');


          final StorageUploadTask uploadTask = storageRef.putFile(
            logo,
            StorageMetadata(
              contentType: 'image/jpg',
            ),
          );

          final StorageTaskSnapshot downloadUrl =
          (await uploadTask.onComplete);
          final String url = (await downloadUrl.ref.getDownloadURL());
          print('URL Is $url');

И сбой яполучение:

Unhandled Exception: PlatformException(Error -13021, FIRStorageErrorDomain, User does not have permission to access gs://*************.com/etetrLogo.jpg.)

Когда я удаляю правила и разрешаю читать и писать всем, это работает, но это не безопасный вариант.Любые идеи о том, как заставить это работать?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...