Firebase를 사용한 사용자 인증을 위해 다음 코드가 있지만 코드를 이해할 수 없습니다. 코드 아래에서 내가 직면 한 의구심을 언급했습니다. 누군가가 그들을 명확하게하십시오.
var ref = new Firebase("https://prj_name.firebaseio.com");
var loggedInUser = [];
$(document).ready(function() {
authData=ref.getAuth();
if(authData == null){
//TODO find an elegant way to manage authorization
// window.location = "../index.html";
}else{
ref.child("users").child(authData.uid).on("value", function(snapshot){
$( "span.user-name").html(snapshot.val().displayName);
loggedInUser.displayName = snapshot.val().displayName;
});
}
$("#cPassword").focusout(function() {
validatePassword($("#cPassword"), $("#password"));
});
$(document).on("click", ".clickable-row" ,function(){
window.document.location = $(this).data("href");
});
});
function validatePassword(password, cPassword) {
if (cPassword.val() != password.val()) {
cPassword.css('border-color', 'red');
password.css('border-color', 'red');
return false;
}
return true;
}
firebase와 같은 필요한 모든 라이브러리가 포함되어 있으며 위의 코드는 완벽하게 작동합니다. 유일한 문제는 이해할 수 없다는 것입니다.
내 의심은 다음과 같습니다.
authData=ref.getAuth();
수행하는 작업과 실행 후 authData에 포함 된 내용은 무엇입니까?ref.child("users").child(authData.uid).on("value", function(snapshot)
누군가 내 의심을 명확히 해줄 수 있습니까? 감사.
좋습니다.
먼저 아직 업데이트하지 않은 경우 먼저 Firebase 보안 규칙을 업데이트해야합니다. Firebase 보안 규칙 가이드
ref.getAuth ()는 아직 인증되지 않은 경우 null 값을 반환하거나 사용자가 인증 된 방법 (사용자 지정 토큰, 페이스 북 ID, 이메일 등)에 대한 정보가 포함 된 개체를 포함합니다.
이 줄 : ref.child("users").child(authData.uid).on("value", function(snapshot)
. 여기에서는 기본적으로 사용자 컬렉션에서 일부 데이터를 요청합니다 : '/ users / {some unique id}'. Firebase에서 데이터를 요청하면 데이터를 사용할 준비가되는 즉시 Firebase가 '값'콜백을 트리거하고이 콜백을 사용하여 데이터 (스냅 샷)를 전달합니다.
firebase 문서는 매우 훌륭합니다. 전체 웹 가이드를 읽는 것이 좋습니다. Firebase 웹 가이드
나는 당신을 위해 몇 가지를 정리할 수 있기를 바랍니다!
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다