Registrasi dan Login dengan Metode Social Media
graph TD
ns([Mulai])
ne([Selesai])
n1[User mengunjungi app]
n2{User terlogin?}
n3["Inisiasi OAuth, lalu redirect (1)"]
n4[User menyelesaikan proses OAuth]
n5["Kirim hasil OAuth (2)"]
n6{User sudah terdaftar?}
n7[User berbekal token-token<br>Access & Refresh]
n8["User mendaftar (3)"]
n9{Pendaftaran menggunakan<br>Facebook/Google?}
n10["Redirect ulang OAuth (4)"]
ns-->n1-->n2
n2-- Ya -->ne
n2-- Tidak -->n3-->n4-->n5-->n6
n6-- Ya -->n7-->ne
n6-- Tidak -->n8-->n9
n9-- Ya -->n10-->n4
n9-- Tidak -->n3
Dalam setiap request/method, gunakan provider yang sesuai. Ambil contoh Facebook:
(1) Server endpoint: GET /auth; Client SDK method: auth.oauthRedirect("facebook", callback_url)
(2) Server endpoint: POST /auth; Client SDK method: auth.login("facebook", data)
(3) Server endpoint: POST /auth/account; Client SDK method: auth.register("facebook", data)
(4) Client SDK method: auth.redoOAuth("facebook")