0

Facebook、Twitter、電子メールを使用して、複数のログイン システムを実装しています。

ユーザーが Facebook でログインすると、自分のアカウントを Twitter アカウントまたは電子メール アカウントと統合できるため、次回のログイン時に、[Twitter でログイン] を押すか、電子メールとパスワードを入力してログインできます。

さて、問題は合併です。

ユーザーが Facebook ログインを使用してアカウント A を作成し、一部のデータを変更し、次に Twitter ログインを使用してアカウント B を作成し、一部のデータを変更した場合、両方のアカウントのデータが異なるため、マージが困難になります。

複数のログインを使用するアプリ/サイトは、この種の状況をどのように処理しますか? それとも複雑にしているのは私ですか?

4

2 に答える 2

0

login メソッドで詳細なアカウント情報を保存しないことがポイントだと思います。これはおそらく、現在のユーザー アカウント DB の外観です。

- account_id: …
  facebook_auth_info: …
  username: …
  birth_date: …
- account_id: …
  twitter_auth_info: …
  username: …
  birth_date: …

これで、このスキーマは「アカウントのマージ」をノーオペレーションにするはずです。

- account_id: …
  facebook_auth_info: …
  twitter_auth_info: …
  username: …
  birth_date: …

つまり、Facebook、Twitter などを「ID プロバイダー」として扱い、自分のアカウントごとに複数の ID プロバイダーを許可します。

于 2014-05-17T07:03:55.367 に答える