1

少数のユーザーがいる独自のユーザー登録を持つ Web アプリがあります。唯一の必須フィールドは、電子メール、パスワード、およびユーザー名であり、一意である必要があります。長期的には、私はまだ独自の登録システムを持ちたいと思っています。

Facebook を統合したいのですが、Facebook 登録または Facebook ログインを統合する必要があるかどうかを判断しようとしています。これらの質問があります:

  1. 私はすでに Facebook ログインの統合を開始しており、うまく機能しています。これにより、Facebook ユーザーがログインできるようにするだけでなく、ユーザーが Facebook 経由で初めてサインインし、サイト経由でまだ登録していない場合に、ユーザーを登録するために必要なすべての情報を取得できます。登録を簡素化するために、ユーザーにパスワードの入力を求めませんが、ユーザーがサイトに直接サインインしようとすると、Facebook ログイン経由でサインインする必要があることをユーザーに伝えます。したがって、私は Facebook 登録の必要性に疑問を持っています。これは、Facebook ログインよりも統合が複雑に思えます。代わりに Facebook 登録を統合する必要がある理由を誰か教えてもらえますか?

  2. Facebook ログインまたは Facebook 登録を既存のユーザー登録に統合する際の欠点は、ユーザー名です。現在、ユーザーの Facebook ユーザー名をデータベースにコピーしています。ただし、ユーザーの Facebook ユーザー名が見つからないか、既存のユーザーのユーザー名と重複している可能性があります。その場合、ユーザーに変更を求める必要があります。その後、ユーザーが Facebook で自分のユーザー名を変更した場合はどうなるでしょうか? ユーザーが次に Facebook 経由でログインするときに、サイトのユーザー名を変更する必要がありますか? ここでのベストプラクティスは何ですか? 私たちのサイトでユーザーのユーザー名をわざわざ変更しなければ、問題にはならないと思い込むのは正しいですか?

  3. 次に、ユーザーの Facebook ユーザー名が当社の要件によって有効でない可能性があります。現在、次の正規表現を使用して、ユーザー名を英数字とアンダースコアのみにする必要があります。これは、Facebook が使用するのと同じ有効性チェックを使用する必要があることを意味します。ユーザー名の Facebook の正規表現を知っている人はいますか?

  4. IMG タグと src= http://graph.facebook.com/facebook.id/pictureを使用して、Facebook ユーザーのプロフィール写真を表示できます。写真をサーバーに保存する方法を知っている人はいますか? Javascript と PHP を使用しています。

ご協力いただきありがとうございます!

4

1 に答える 1

1

ねえ、私はあなたのポイントに1つずつ対処しようとします

  1. Facebook ログインは、ユーザーが Facebook 経由で接続してサイトにサインインする手段にすぎません。Facebook が認証を処理するため、ユーザーはパスワードを持っていません。ただし、Facebook ログインを使用した後に特定のページにリダイレクトし、Facebook に接続せずにアカウントを使用するためのパスワードを入力させることができます。Facebook登録プラグインは、ユーザーを登録システムに登録させるためのツールです(ただし、唯一の登録システムになることはサポートしています)。ユーザーがすでに Facebook にログインしている場合、名前など、一般的に要求される可能性のあるいくつかのフィールドを事前に入力することで、利便性を提供します。ただし、追加情報を求めるようにカスタマイズできます。また、ユーザーが facebook を使用しているかどうかにかかわらず、1 つの登録フォームをユーザーに提供できることも意味します。

  2. Facebook のユーザー名が欠落していてはなりません。彼らの「名前」フィールドは、彼らが提供しなければならないと私が信じているユーザーの姓名でなければなりません。空にはできないと思います。私が実際に行うことをお勧めするのは、ポイント 1 で述べたことです。ユーザーが facebook 経由で接続できるようにしますが、ログイン フローの一部として、またはその後にユーザー名を入力するように求めます。次に、現在のデータベースに対する一意性を確認できます。まず、first_last_timestamp などのユーザー名を割り当てることができます。これにより、ユーザー名を自分が望むものに変更する可能性が高くなります。登録プラグインを使用した場合は、独自の「ユーザー名」フィールドを簡単に入力できます。それからそれはしません'

  3. Facebook のユーザー名は、ユーザーの姓名だけにする必要があります (もちろん、人々は無作為に入力しますが)。「名前」フィールドはこれらの組み合わせであるため、それらの間にスペースが入る可能性が高くなります。独自の正規表現を使用して無効な文字をいつでも置き換えたり、空白をアンダースコアに置き換えたりすることができます。

  4. ユーザーの画像を自分のサーバー/DBに保存することを制限するプラットフォームポリシーがあるかどうかはわかりません. 私が尋ねたいのは、なぜあなたがそうしたいのですか?私の経験では、これは名前よりも変更される可能性が高いです。そのため、あなたのサイトを使用している友人のグループは、友人が Facebook で使用しているプロフィール写真を認識する可能性が高くなります。

最後に、Facebook アカウントをいずれかの方法で接続することの最良の部分は、ユーザーが毎回サインインする必要がないように、スムーズなログイン エクスペリエンスを提供できることを意味します。私自身の個人的な経験では、Facebook ログイン (成功ページに独自の統合コードを使用) は、登録プラグインよりも優れています。ユーザーがこの方法でアプリに接続するための手順が少なくなり、フォームに入力する必要がなくなります。また、成功のコールバックは、前述のカスタム ユーザー名コード/フローを引き続き実行し、必要に応じてユーザー名を変更するよう促すこともできることを意味します。ユーザーはこの方法で参加する可能性が高いため、サインアップ時にできるだけ少ない情報を求めることが最善であることを覚えておいてください.

お役に立てれば!

于 2013-10-24T19:09:09.863 に答える