Я даже не уверен, что делаю правильные шаги. Вот моя проблема. Я загружаю данные на экран, если пользователь аутентифицирован. Это сводный экран. Я могу щелкнуть элемент, и он отправит меня на новую страницу «сведений» (window.location). Я передаю идентификатор в URL-адресе, а затем выполняю запрос GET, чтобы отобразить сведения. Когда я реализую свои правила в базе данных firebase (".read": "auth! = Null"), я получаю в консоли ошибку "401 Unauthorized". Так или иначе, мне нужно либо передать пользователя подробности. js, либо как-то установить Persistence. У кого-нибудь есть предложения?
ЭТО КОД ИЗ ГЛАВНОЙ. JS
auth.onAuthStateChanged(user => {
console.log(user);
if (user) {
database.on('value', function(data) {
myData = data.val()
keys = Object.keys(myData)
buildProperties();
})
// tempBuild()
} else {
$('.eachProperty').empty()
$('.eachProperty').append($(`<h1>You must be signed in to view properties</h1>`))
}
})
$('body').on('click', '.singleProp', function() {
id = $(this).attr('id')
window.location = "/details.html?id=" + id
})
ЭТО КОД ИЗ ДАННЫХ. JS
var myLocation = location.search.slice(4)
$.get(`https://XXXXXX.firebaseio.com/property/${myLocation}/.json`).then(myProperty)
function myProperty(prop) {
$('.propAddress').text(prop.address)
$('.zip').text(prop.zip)
if(prop.pictures){
for (var i = 0; i < prop.pictures.length; i++) {
var myImg = prop.pictures[i]
$('.imgContainer').append($(`<div class="eachPicDiv"><img src="${myImg}" alt="0" class="detailPic">
<ion-icon class="rBtn" name="arrow-redo-outline"></ion-icon>
</div`))
}
} else {
$('.imgContainer').append($(`<h1>THERE WERE NO PICTURES</h1>`))
}
}