前提・実現したいこと
初回メールリンクで認証
2回目以降メールアドレスの入力のみで認証
発生している問題
登録済みのユーザーでも毎回メールを送信してしまいます。
メールリンクで認証するので当たり前ですが、メール通知可能な登録仕様で、2回目以降はメール無しで認証できる方法はないかと思います。
SignInWithEmailLinkメソッドに要求される
oobCode: this.oobCode,
email: this.email,
idToken: this.idToken,
tenantId: this.tetaneId,
の値を取得することはできないでしょうか?
該当のソースコード
typescript
1//2回目ログインsignInWithEmailLink()で要求 2 oobCode = '' 3 email = '' 4 idToken = '' 5 tetaneId = '' 6//1回目ログインsendSignInLinkToEmail()設定内容 7 actionCodeSettings = { 8 url: 'https://firebase.com', 9 handleCodeInApp: true, 10 }; 11 12 submitEmail() { 13//2回目以降のログイン 14 axios.post( 15 'https://identitytoolkit.googleapis.com/v1/accounts:signInWithEmailLink?APIkey', 16 { 17 oobCode: this.oobCode, 18 email: this.email, 19 idToken: this.idToken, 20 tenantId: this.tetaneId, 21 }, 22 ).then((responce) => { 23 this.$store.commit('idToken', responce.data.idToken); 24 this.$router.push('/'); 25 }).catch((error) => { 26//初回ログイン 27 firebase.auth().sendSignInLinkToEmail(this.email, this.actionCodeSettings) 28 .then((responce) => { 29 console.log('responce', responce); 30 window.localStorage.setItem('emailForSignIn', this.email); 31 window.alert('SendMail'); 32 }) 33 .catch((error2) => { 34 console.log('SendingMaiError', error2); 35 }); 36 }); 37 }
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。