2

Facebook Connect では、非常に制限された通信とユーザーの情報へのアクセスが許可されます。

ユーザーが Facebook Connect でログインするときに、Facebook アカウントにリンクされているサイトでユーザーのアカウントを作成したいと考えています。

唯一の問題は、登録 (MembershipService.CreateUser(username, password, email))にはメール アドレスが必要であり、アクセスできないことです。(アカウントをリンクする前にユーザー名を選択させます)。

メールアドレスを持たないユーザーをどのように登録しますか?

アカウントをリンクするときに、入力させたくないのですが、それができることはわかっています。Diggはまさに私がやりたいと思っていたことをとてもうまくやってくれます。

4

3 に答える 3

2

ユーザーをサイトに登録することはできますが、ユーザーには部分的に登録されていることを知らせ、登録を完了するには、残りの個人情報 (電子メール アドレスなど) を入力する必要があります。

ユーザーが Web サイトを利用できるようにしますが、登録がまだ完了していないことを常にユーザーに促します。

Stack Overflow と同じように、投稿された質問などに関する最新情報をメールで受け取りたい場合を除き、メール アドレスを登録する必要はありません。

ありがとう

于 2009-08-02T23:29:16.943 に答える
0

上記のポスターの「部分的な」解決策に同意します。おそらく – Facebook BIGINT の「ユーザー ID」は一意であるため、電子メール フィールドに 123456789@facebook.com (fb_user_id@facebook.com) を入力して、電子メールが Facebook によって提供されていることを示すことができます。FB ユーザーのメール アドレスに直接アクセスすることはできないため、実際には回避方法がありません。パスワードに null または空の文字列を追加するだけです。しかし、正直なところ、users テーブルが facebook connect 用に適切に設定されているようには思えません。書き直す方法はありますか?したがって、ユーザーエントリは次のいずれかになります

MembershipService.CreateUser(username, password, email)

また

MembershipService.CreateUser(facebook_user_id)
于 2009-08-02T23:39:59.133 に答える
0

ユーザーが電子メール アドレスを提供するという要件を削除します。結局のところ、彼らもパスワードを持っていないので、とにかく CreateUser を変更する必要があります。ユーザーが連絡を返す必要があることを行った場合は、その時点で電子メールを要求するか、Facebook が fbconnect API で「ユーザー間通知の送信」を実装するのを待ち、Facebook 自体を介してメールを送信します。

于 2009-08-02T23:24:57.360 に答える