Facebookのソーシャルログイン機能を利用すると、以下のようなユーザー情報を取得できます。
- ユーザーの公開プロフィール情報(名前、プロフィール画像など)
 - ユーザーのメールアドレス
 - ユーザーの友達リスト(任意のアプリでユーザーの友達のリストを使用する場合)
 - ユーザーが公開設定にしているその他の情報(性別、誕生日、現在の場所など)
 
ただし、これらの情報はFacebookのプライバシー設定によって制限される場合があります。ユーザーがプライバシー設定で情報の公開範囲を制限している場合、アプリはその情報にアクセスできません。
ユーザーの公開プロフィール情報には、名前、プロフィール画像、性別、誕生日、現在の場所などが含まれます。
ユーザーの公開プロフィール情報のデータレイアウトは以下のようになります:
- 名前: [ユーザーの名前]
 - プロフィール画像: [プロフィール画像の表示]
 - 性別: [ユーザーの性別]
 - 誕生日: [ユーザーの誕生日]
 - 現在の場所: [ユーザーの現在の場所]
 
これらの情報は、ユーザーがプライバシー設定で公開している場合にアクセス可能です。
以下のコードは、Facebookのソーシャルログインを使用してユーザー情報を取得するための例です。
// ユーザー情報のスコープを指定
const scope = 'public_profile,email,user_friends';
// ログイン処理を実行
FB.login(function(response) {
  if (response.status === 'connected') {
    // ユーザー情報の取得
    FB.api('/me', {fields: 'id,name,email'}, function(userInfo) {
      // ユーザー情報の表示
      console.log('ユーザー名: ' + userInfo.name);
      console.log('メールアドレス: ' + userInfo.email);
    });
  } else {
    console.log('ログインに失敗しました');
  }
}, {scope: scope});
上記のコードでは、FB.login関数を使用してFacebookのログイン処理を行います。ログインが成功した場合、FB.api関数を使用して/meエンドポイントからユーザー情報を取得します。取得した情報は、コンソールに表示されます。この例では、nameとemailのフィールドを取得していますが、必要に応じて他のフィールドも指定できます。
なお、実際のアプリケーションでは、Facebookの開発者ポータルでアプリを作成し、適切な設定を行う必要があります。また、FacebookのJavaScript SDKを事前に読み込む必要があります。
<script async defer crossorigin="anonymous" src="<https://connect.facebook.net/en_US/sdk.js#xfbml=1&version={api-version}&appId={your-app-id}&autoLogAppEvents=1>" nonce="xxx"></script>ユーザー情報のフィールドには以下のようなものがあります:
- id: ユーザーの一意のID
 - name: ユーザーの名前
 - first_name: ユーザーの名字
 - last_name: ユーザーの名前
 - middle_name: ユーザーのミドルネーム
 - email: ユーザーのメールアドレス
 - link: ユーザーのプロフィールページのURL
 - picture: ユーザーのプロフィール画像のURL
 - gender: ユーザーの性別
 - locale: ユーザーのロケール(言語や地域設定)
 - timezone: ユーザーのタイムゾーン
 - updated_time: ユーザー情報の最終更新日時
 
これらのフィールドは、FB.api関数のfieldsパラメータで指定することができます。
例えば、FB.api('/me', {fields: 'name,email,picture'})のようにすると、ユーザーの名前、メールアドレス、プロフィール画像のURLを取得することができます。
必要に応じて、上記のフィールド以外も指定することができます。