LaravelでSNSログイン機能を実装した際に、ユーザーFacebookプロフィールリンクを付けたいと思いました。
ただ、Facebook認証で取得するユーザ情報の中にプロフィールリンクにある情報がない…??となりました。
具体的には、下記のような情報が取得できます。
+token: +refreshToken: +expiresIn: +id: +nickname: +name: +email: +avatar
FacebookのプロフィールURLは
https://www.facebook.com/{識別情報}
ここの識別情報と、SNS認証で取得できるnameが違うのです。
結論としては
SNS認証で取得できるidを使います。
PC
https://www.facebook.com/profile.php?fbid={id}
SP
https://m.facebook.com/profile.php?fbid={id}
これで、Facebookのプロフィールへリンクさせることができます。