Created
August 17, 2021 13:13
-
-
Save maucaro/293429ce07a55cdec6f42cc8933d3b90 to your computer and use it in GitHub Desktop.
Firebase UI Sample - saving token in cookie
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<!DOCTYPE html> | |
<html> | |
<head> | |
<meta charset="UTF-8"> | |
<title>Sample FirebaseUI App</title> | |
<script src="https://www.gstatic.com/firebasejs/8.9.0/firebase.js"></script> | |
<script> | |
var config = { | |
apiKey: "<YOUR_API_KEY>", | |
authDomain: "<YOUR_PROJECT_ID>.firebaseapp.com", | |
}; | |
firebase.initializeApp(config); | |
</script> | |
<script src="https://www.gstatic.com/firebasejs/ui/4.8.1/firebase-ui-auth.js"></script> | |
<link type="text/css" rel="stylesheet" href="https://www.gstatic.com/firebasejs/ui/4.8.1/firebase-ui-auth.css" /> | |
<script type="text/javascript"> | |
// FirebaseUI config. | |
var uiConfig = { | |
callbacks: { | |
signInSuccessWithAuthResult: function(authResult, redirectUrl) { | |
var user = authResult.user; | |
var credential = authResult.credential; | |
var isNewUser = authResult.additionalUserInfo.isNewUser; | |
var providerId = authResult.additionalUserInfo.providerId; | |
var operationType = authResult.operationType; | |
authResult.user.getIdToken().then(function(accessToken) { | |
document.cookie = "firebaseAccessToken=" + accessToken + '; path=/' + "; SameSite=Strict"; | |
}) | |
// Do something with the returned AuthResult. | |
// Return type determines whether we continue the redirect | |
// automatically or whether we leave that to developer to handle. | |
return true; | |
} | |
}, | |
signInSuccessUrl: '/', | |
signInOptions: [ | |
// Leave the lines as is for the providers you want to offer your users. | |
// firebase.auth.GoogleAuthProvider.PROVIDER_ID, | |
// firebase.auth.FacebookAuthProvider.PROVIDER_ID, | |
// firebase.auth.TwitterAuthProvider.PROVIDER_ID, | |
// firebase.auth.GithubAuthProvider.PROVIDER_ID, | |
firebase.auth.EmailAuthProvider.PROVIDER_ID, | |
// firebase.auth.PhoneAuthProvider.PROVIDER_ID, | |
// firebaseui.auth.AnonymousAuthProvider.PROVIDER_ID | |
], | |
// tosUrl and privacyPolicyUrl accept either url string or a callback | |
// function. | |
// Terms of service url/callback. | |
tosUrl: '<your-tos-url>', | |
// Privacy policy url/callback. | |
privacyPolicyUrl: function() { | |
window.location.assign('<your-privacy-policy-url>'); | |
} | |
}; | |
// Initialize the FirebaseUI Widget using Firebase. | |
var ui = new firebaseui.auth.AuthUI(firebase.auth()); | |
// The start method will wait until the DOM is loaded. | |
ui.start('#firebaseui-auth-container', uiConfig); | |
</script> | |
</head> | |
<body> | |
<!-- The surrounding HTML is left untouched by FirebaseUI. | |
Your app may use that space for branding, controls and other customizations.--> | |
<h1>Welcome to My Awesome App</h1> | |
<div id="firebaseui-auth-container"></div> | |
</body> | |
</html> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment