2016-07-18 6 views
0

は、私は彼らのサンプルコードを見てFirebase APIFireBase JSとHTML AUTH

を使用してWebログインを作成しようとしていますし、正常に動作するように見えたが、今、それはないです。

キーで切り取らウェブは、私はちょうどクイックスタート-サインインステータスラベルはどちらか更新されていないセキュリティ

のためにそれらを削除しています。

<script src="https://www.gstatic.com/firebasejs/3.2.0/firebase.js"></script> 
<script> 
    var config = { 
    apiKey: "*****", 
    authDomain: "project-*****.firebaseapp.com", 
    databaseURL: "https://project-*****.firebaseio.com", 
    storageBucket: "project--*****.appspot.com", 
}; 
firebase.initializeApp(config); 
</script> 

<!DOCTYPE html> 
<html> 
<head> 

<script type="text/javascript"> 
function toggleSignIn() { 
    if (firebase.auth().currentUser) { 
    firebase.auth().signOut(); 
    } else { 
    var email = document.getElementById('email').value; 
    var password = document.getElementById('password').value; 
    if (email.length < 4) { 
     alert('Please enter an email address.'); 
     return; 
    } 
    if (password.length < 4) { 
     alert('Please enter a password.'); 
     return; 
    } 
    firebase.auth().signInWithEmailAndPassword(email, password).catch(function(error) { 
     var errorCode = error.code; 
     var errorMessage = error.message; 
     if (errorCode === 'auth/wrong-password') { 
     alert('Wrong password.'); 
     } else { 
     alert(errorMessage); 
     } 
     console.log(error); 
     document.getElementById('quickstart-sign-in').disabled = false; 
    }); 
    } 
    document.getElementById('quickstart-sign-in').disabled = false; 
} 

function initApp() { 
    firebase.auth().onAuthStateChanged(function(user) { 
    if (user) { 
     document.getElementById('quickstart-sign-in-status').textContent = 'Signed in'; 
    } else { 
     document.getElementById('quickstart-sign-in-status').textContent = 'Signed out'; 
    } 
    document.getElementById('quickstart-sign-in').disabled = false; 
    }); 

    document.getElementById('quickstart-sign-in').addEventListener('click', toggleSignIn, false); 
} 

window.onload = function() { 
    initApp(); 
}; 
</script> 

<title>Fitness Schedule</title> 
<link rel="stylesheet" href="css/style.css"/> 

</head> 
<body> 
<div class="container"> 
    <div class="main"> 
    <h2>Fitness Schedule</h2><hr/> 

    <center><label id="quickstart-sign-in-status"></label></center><br><br> 

    <label>User Name :</label></br> 
    <input type="text" name="email" id="email"/></br> 

    <label>Password :</label></br> 
    <input type="password" name="password" id="password"/></br> 

    <button id="quickstart-sign-in" name="signin">Sign In</button> 

    </div> 
</div> 
</body> 
+0

あなたはhtmlタグの外にスクリプトタグを宣言している理由はありますか?おそらくスクリプトタグをまたはおそらくの一番下に置いて、htmlを最初にレンダリングできるようにする必要があります。 – Kyle

+0

設定キーに加えて、その他はすべて頭の中にあります。 Firebaseは私にそれを貼るように言った – willmays1

+0

私は何かが間違っていると思う - すべてのスクリプトタグは、最低でも、htmlタグの間に行かなければならない。これはfirebaseのサイトで提供されているサンプルです:https://github.com/firebase/quickstart-js/tree/master/database - 開始時の2番目の箇条書きを確認してください。また、実際のfb refがhtml の外側にあるようです。私は(これを犯人として排除するために)またはセクションに移動してみてください。 – Kyle

答えて

0

私はちょうどここにplnkrでコードを置く - >http://plnkr.co/edit/7qa2H6m9VRhmkd7b1X8D 、正常に動作するよう、

<!DOCTYPE html> 
<html> 

<head> 
    <link data-require="[email protected]" data-semver="4.0.0-alpha.2" rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-alpha.2/css/bootstrap.min.css" /> 
    <link rel="stylesheet" href="style.css" /> 
    <script src="https://www.gstatic.com/firebasejs/3.2.0/firebase.js"></script> 
    <script src="script.js"></script> 
    <script type="text/javascript"> 
    var config = { 
     YOUR-CONFIG-GOES-HERE 
    }; 
    firebase.initializeApp(config); 


    function toggleSignIn() { 
     if (firebase.auth().currentUser) { 
     firebase.auth().signOut(); 
     } else { 
     var email = document.getElementById('email').value; 
     var password = document.getElementById('password').value; 
     if (email.length < 4) { 
      alert('Please enter an email address.'); 
      return; 
     } 
     if (password.length < 4) { 
      alert('Please enter a password.'); 
      return; 
     } 
     firebase.auth().signInWithEmailAndPassword(email, password).catch(function(error) { 
      var errorCode = error.code; 
      var errorMessage = error.message; 
      if (errorCode === 'auth/wrong-password') { 
      alert('Wrong password.'); 
      } else { 
      alert(errorMessage); 
      } 
      console.log(error); 
      document.getElementById('quickstart-sign-in').disabled = false; 
     }); 
     } 
     document.getElementById('quickstart-sign-in').disabled = false; 
    } 

    function initApp() { 
     firebase.auth().onAuthStateChanged(function(user) { 
     if (user) { 
      document.getElementById('quickstart-sign-in-status').textContent = 'Signed in'; 
     } else { 
      document.getElementById('quickstart-sign-in-status').textContent = 'Signed out'; 
     } 
     document.getElementById('quickstart-sign-in').disabled = false; 
     }); 

     document.getElementById('quickstart-sign-in').addEventListener('click', toggleSignIn, false); 
    } 

    window.onload = function() { 
     initApp(); 
    }; 
    </script> 
    <title>Fitness Schedule</title> 
    <link rel="stylesheet" href="css/style.css" /> 
</head> 

<body> 
    <div class="container"> 
    <div class="main"> 
     <h2>Fitness Schedule</h2> 
     <hr /> 
     <center> 
     <label id="quickstart-sign-in-status"></label> 
     </center> 
     <br /> 
     <br /> 
     <label>User Name :</label> 
     <br /> 
     <input type="text" name="email" id="email" /> 
     <br /> 
     <label>Password :</label> 
     <br /> 
     <input type="password" name="password" id="password" /> 
     <br> 
     <br> 
     <button class="btn btn-primary" id="quickstart-sign-in" name="signin">Sign In</button> 
    </div> 
    </div> 
</body> 

</html> 
関連する問題