Аутентифицируйся с владельцем firebase, прежде чем сносить - PullRequest
1 голос
/ 04 марта 2020

Итак, у меня есть этот код:

var temp_photo = storageRef.child('user_photos/'+snap.key+'/')
var y = r.insertCell(17).innerHTML = snap.val().photo_url;
temp_photo.getDownloadURL().then(downloadURL => {
  console.log(downloadURL);
  //var y = r.insertCell(17).innerHTML = '<img src="'+downloadURL+'" width="50" height="50" />';
})

работает нормально, он показывает URL-адрес изображения в базе данных:

user_photos/07KMSXj5QBYHj55555558bSLIkK2/D41FB90B-1111-5555-2222-22F86D69883F.jpg

это правильный путь к изображению, проблема в том, что я не пытаюсь отобразить URL, я хочу отобразить реальное изображение, какую-либо помощь с этим?

мои конфиги настроены так:

var firebaseConfig = {
  apiKey: "55555",
  authDomain: "MY-APP.firebaseapp.com",
  databaseURL: "https://MY-APP.firebaseio.com",
  projectId: "MYAPP",
  storageBucket: "APP.appspot.com",
  messagingSenderId: "44444",
  appId: "1:5555555:web:5555555"
};
firebase.initializeApp(firebaseConfig);

И мой Firebase Security настроен следующим образом:

Я думаю, что это как-то связано с разрешением, теперь оно мое:

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

Я console.log downloadURL и получаю следующую распечатанную информацию

Похоже, что выдает ошибку 404

[Ошибка] Не удалось загрузить ресурс: сервер ответил со статусом 404 () (user_photos / 07KMSXj5QBYHj55555558bSLIkK2, строка 0)

выглядит так, как будто ему не удалось получить user_photos/07KMSXj5QBYHj55555558bSLIkK2

, но он должен получить полный URL (изображение в папке):

user_photos/07KMSXj5QBYHj55555558bSLIkK2/D41FB90B-1111-5555-2222-22F86D69883F.jpg

Вот также изображение того, что регистрируется:

enter image description here

Я думаю, что я ed для аутентификации пользователя до того, как он может получить downloadURL

У меня есть что-то вроде этого:

firebase.initializeApp(firebaseConfig);
var email="my@gmail.com";
var password="mypassword";
//Sign In User with Email and Password
firebase.auth().signInWithEmailAndPassword(email, password)

со следующей настройкой:

<script src="https://www.gstatic.com/firebasejs/7.2.3/firebase-app.js"></script>
<script src="https://www.gstatic.com/firebasejs/7.2.3/firebase-database.js"></script>
<script src="https://www.gstatic.com/firebasejs/7.2.3/firebase-storage.js"></script>
<script src="https://www.gstatic.com/firebasejs/7.9.3/firebase-auth.js"></script>

получить ошибку, что auth () не является функцией?

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