new docs の(不明な)例:
_var user = firebase.auth().currentUser;
var credential;
// Prompt the user to re-provide their sign-in credentials
user.reauthenticate(credential).then(function() {
_
v3 Firebaseクライアントでは、このcredential
オブジェクトをどのように作成すればよいですか?
私は試した:
reauthenticate(email, password)
(ログインメソッドのような)reauthenticate({ email, password })
(ドキュメントには1つの引数のみが記載されています)運がない:(
PS:新しいドキュメントで関連情報を検索するのに無駄な時間をカウントしません...素晴らしいfirebase.comのドキュメントがとても恋しいですが、firebase.storageのv3に切り替えたいと思いました。 ..
私はそれをうまく機能させることができたので、ドキュメントを更新して、網羅的で読みにくい参照にあまり時間をかけたくない人のためにこれを含める必要があります。
資格情報オブジェクトは次のように作成されます。
const user = firebase.auth().currentUser;
const credential = firebase.auth.EmailAuthProvider.credential(
user.email,
userProvidedPassword
);
完全な答え-次のことができます。
_var user = firebase.auth().currentUser;
var credentials = firebase.auth.EmailAuthProvider.credential(
user.email,
'yourpassword'
);
user.reauthenticateWithCredential(credentials);
_
reauthenticateWithCredential
はreauthenticate()
の更新バージョンであることに注意してください
これについてはドキュメントがあまり明確ではないことに同意します。しかし、私が見つけたAPIリファレンスをもう少し詳しく見てみると firebase.auth.AuthCredential と this であり、reauthenticate()
に渡す必要があると思います。 。
私はここで推測していますが、firebase.auth()
をログに記録して、そこにcredential
オブジェクトがあるかどうかを確認しようとします。
次のようなものになると思います。
user.reauthenticate(firebase.auth().credential).then(function() {