I slutet av dagen ska alla ha ett fungerande loginsystem
//Adding values
firebase.database().ref("todos")
.on("child_added", (snapshot) => {})
//Removing values
firebase.database().ref("todos")
.on("child_removed", (snapshot) => {})
//Changing values
firebase.database().ref("todos")
.on("child_changed", (snapshot) => {})
Firebase skickar bara ut vÀrdena, vi mÄste sjÀlv hantera hur det lagras
firebase.database().ref("todos")
.on("child_added", (snapshot) => {
//Clone the state
const newTodoList = [...this.state.todos];
//Push new values
newTodoList.push(snapshot.val());
//Replace state
this.setState({ todos: newTodoList });
});
firebase.database().ref("todos")
.on("child_removed", (snapshot) => {
//Clone the state
const clonedList = [...this.state.todos];
//Filter the cloned state, return new array
const newTodoList = clonedList.filter((item) => {
//Return every object except the removed
return item.key !== snapshot.key;
});
//Replace state
this.setState({ todos: newTodoList });
});
.catch()
nÀr du kannull
-vÀrdenfirebase.auth()
firebase autentifikation bygger pÄ OAuth2
En populÀr lösning för frontend som lÀgger till ett extra steg i autentiseringen
Jobbigt att implementera sjÀlv
I'm learning about security
sup
OAuth Àr en öppen standard för autentisering, som anvÀnds över internet för att autentisera anvÀndare till tredje part, utan att anvÀndaren skickar nÄgot lösenord.
Google fungerar som en notarie som sÀger att jag Àr jag utan att kÀnslig information om mig lÀcker
Allting vi gjorde i PHP hÀnder fortfarande
+ massa annat
Allt detta i: firebase.auth()
one function to bind them
firebase
.auth()
.createUserWithEmailAndPassword(email, password)
Sparar INTE vÀrdet i realtidsdatabasen
one function to bind them
firebase
.auth()
.createUserWithEmailAndPassword(email, password)
.catch(error => console.log(error))
Errorhantering ett mÄste hÀr!
one function to find them
firebase
.auth()
.signInWithEmailAndPassword(email, password)
Sparar session och i localstorage
Behöver inte ha flera callbacks, login sköter vi i en annan funktion
one function to find them
firebase
.auth()
.signInWithEmailAndPassword(email, password)
.catch(error => console.log(error));
one function to rule them all
firebase.auth().onAuthStateChanged(user => {
if (user) {
//Logged in,
} else {
//Denied, user === null
}
});
Detta var default innan, bara om auth finns
{
"rules": {
".read": "auth != null",
".write": "auth != null"
}
}
NĂ€sta vecka:
Hur vi strukturerar databasen
SĂ€kerhetsregler
Deploy to production
+ Jobba pÄ projektet
Resten av dagen:
Implementera login pÄ egen hand
Informera mig i person eller via Slack vad du har tÀnkt bygga för sida
Jag ger gÀrna feedback pÄ upplÀgget