Es gibt zwei Wege für Authenticate Using Twitter on Web App
1.Handle the sign-in flow with the Firebase SDK
2.Handle the sign-in flow manually
Sie müssen versuchen, die Anmeldeinformationen des Auth-Anbieter zu bekommen.
Der einfachste Weg zur Authentifizierung Ihrer Benutzer mit Firebase unter Verwendung ihrer Twitter-Konten ist die Anmeldung mit dem Firebase SDK. Gehen Sie nach den folgenden Schritten:
Schritt 1: Erstellen Sie eine Instanz des Twitter-Provider-Objekt:
var provider = new firebase.auth.TwitterAuthProvider();
Schritt 2: Authentifizieren mit Firebase mit dem Twitter-Provider-Objekt. Sie können Ihre Benutzer auffordern, sich mit ihren Twitter-Konten anzumelden, indem sie entweder ein Popup-Fenster öffnen oder auf die Anmeldeseite umleiten. Die Umleitungsmethode wird auf mobilen Geräten bevorzugt.
Um mit einem Pop-up-Fenster anmelden, rufen signInWithPopup:
firebase.auth().signInWithPopup(provider).then(function(result) {
// This gives you a the Twitter OAuth 1.0 Access Token and Secret.
// You can use these server side with your app's credentials to access the Twitter API.
var token = result.credential.accessToken;
var secret = result.credential.secret;
// The signed-in user info.
var user = result.user;
// ...
}).catch(function(error) {
// Handle Errors here.
var errorCode = error.code;
var errorMessage = error.message;
// The email of the user's account used.
var email = error.email;
// The firebase.auth.AuthCredential type that was used.
var credential = error.credential;
// ...
});
Beachten Sie auch, dass Sie die Twitter-Anbieter OAuth-Token abrufen kann, die verwendet werden können, um Weitere Daten über die Twitter-APIs abrufen.
So melden Sie sich von Seite zu der in Zeichen-Umleitung, rufen signInWithRedirect:
firebase.auth().signInWithRedirect(provider);
Dann können Sie auch die OAuth-Token des Twitter-Provider abrufen durch den Aufruf getRedirectResult wenn Ihre Seite geladen wird:
firebase.auth().getRedirectResult().then(function(result) {
if (result.credential) {
// This gives you a the Twitter OAuth 1.0 Access Token and Secret.
// You can use these server side with your app's credentials to access the Twitter API.
var token = result.credential.accessToken;
var secret = result.credential.secret;
// ...
}
// The signed-in user info.
var user = result.user;
}).catch(function(error) {
// Handle Errors here.
var errorCode = error.code;
var errorMessage = error.message;
// The email of the user's account used.
var email = error.email;
// The firebase.auth.AuthCredential type that was used.
var credential = error.credential;
// ...
});
Vielen Dank für die Antwort, aber das hilft nicht bei der Verknüpfung eines Kontos (siehe: https://firebase.google.com/docs/auth/web/account-linking#link-auth-provider- credentials-to-a-user-account) Sie rufen nicht signInWithRedirect oder signInWithPopup auf, Sie melden sich nicht mit twitter an. –