1

Facebook がユーザーに新しい更新されたトークンを提供し、そのユーザーの userconnection レコードが既にある場合、新しい userconnection レコードが作成されますか、それともそのユーザーの userconnection レコードが新しいトークンで更新されるだけですか?

基本的に、ここで起こっていることは、使用する各デバイスが、Spring Social の userconnect db テーブルに現在格納されているものとは異なる新しい Facebook トークンを作成することです。したがって、作成した ConnectionSignUp 実装を呼び出しています。これは、同じ Facebook ユーザーであり、アプリケーションで同じアプリ内部ユーザーを使用していることを確認する代わりに、アプリケーション用に新しいアプリ ユーザーを作成します。

AccountSecurity accountSecurity = accountService.newUserGenerator(newUserName, username, userProfile.getFirstName(),
    userProfile.getLastName(), userProfile.getEmail())

12-5-14 4:09 PM PST の更新: はい、2 つの異なる "デバイス" は異なるアクセス トークンを取得するようです。Spring Social は単に providerid と userproviderid を使用し、それらが同じアカウントであることを「確認」し、その場合 ConnectionSignUp execute() メソッドを呼び出して新しいユーザーを作成しません。

ただし、Facebook はまったく同じアプリ (Flash 対 iOS アプリですが、Facebook では 1 つのアプリとして定義されています) であり、まったく同じユーザー アカウント (私のもの) であると見なすべき場合に、同じ userproviderid を返送していないようです。Facebook は同じ userproviderid を送信する必要があります。

4

0 に答える 0