ユーザー
ソーシャルログインワークフロー
APIを介してソーシャルログインを実行するための推奨ワークフローの疑似コードを以下に示します。
疑似コード
1. SNSからユーザーID及びメールアドレスを取得するには、目的の外部認証プロバイダー(ソーシャルAPI:Facebook、Twitterなど)を使用します。
2. 次にINTER-STREAMのユーザーIDを取得します。
外部認証プロバイダ情報からINTER-STREAMのユーザーIDの取得を試みます。
API:users > get_id_from_ext_auth_info
APIがユーザーIDを返さなかった場合、SNSから提供されたユーザーのメールアドレス(直接、または別の外部認証プロバイダーを使用してその同じメールを使用して登録済みのユーザー)を使用してIDを取得してください。
API:users > get_id_from_ext_auth_info
APIがユーザーIDを返した=ユーザーが存在する場合、ユーザーの新しい外部認証プロバイダを追加します。
API:users > get_id_from_ext_auth_info
3-1. ユーザーIDを取得できた(ユーザーが存在し、外部認証プロバイダが関連付けられている)場合、ユーザーをログインしてINTER-STREAMにリダイレクトします。
・ユーザーログイン
API:users > log_in(外部認証プロバイダーログイン)
・ログインに成功したら、ユーザーを"session_transfer_url"URLにリダイレクトします。
3-2. ユーザーIDを取得できなかった(ユーザーが存在しない)場合は、新規登録をおこないます。
・ユーザー登録
API:users > create(外部認証プロバイダを使用した登録)
・登録が成功したら、INTER-STREAMへユーザーをログインさせた後リダイレクトします(3-1を参照)。