Saya ingin menggunakan FirebaseUI dalam mode redirect, berbeda dengan mode popup yang saya gunakan saat ini. Tetapi saya tidak ingin memiliki URL masuk khusus yang terpisah, sebaliknya saya ingin pengguna dapat masuk dari URL apa pun (menggunakan dialog khusus sebagai wadah UI untuk FirebaseUI).

Masalah yang saya hadapi adalah ketika memulai proses login, saya menampilkan dialog dan pengguna memilih penyedia auth mereka, dialihkan ke situs web auth, tetapi kemudian mereka diarahkan kembali ke URL asli di situs web saya.

Sekarang dialog penampung UI tidak ditampilkan dan firebaseUI.start() tidak dipanggil karena halaman web tidak mengetahui bahwa pengguna sedang dalam proses masuk. Hasilnya adalah tidak ada yang terjadi - pengguna berada di tengah-tengah proses masuk.

Apakah ada cara saya dapat menentukan URL untuk pengalihan pertama? Saya tidak berbicara tentang parameter konfigurasi signInSuccessUrl terakhir, tetapi sesuatu yang serupa untuk pengalihan pertama kembali ke situs web saya?

Dengan begitu saya dapat mengirim URL asli yang memulai proses login bersama dengan flag atau sesuatu yang memberi tahu halaman web bahwa pengguna berada di tengah alur login sehingga dapat menampilkan wadah UI proses login dan memanggil firebaseUI.start() untuk melakukan pengalihan terakhir.

1
Magnus W 22 November 2017, 14:37

1 menjawab

Jawaban Terbaik

Anda dapat memulai FirebaseUI dari URL mana pun tetapi signInWithRedirect yang mendasarinya selalu kembali ke URL yang sama. Memanggil start pada pengalihan akan menyelesaikan proses masuk. Jika Anda memiliki beberapa kondisi, di mana Anda tidak selalu menampilkan UI masuk, Anda dapat menggunakan beberapa tanda pendingRedirect yang Anda simpan di sessionStorage dan periksa sebelum merender UI untuk menyelesaikan proses masuk saat kembali. Anda akan menghapusnya setelah rendering.

1
bojeil 27 November 2017, 23:03