2017-10-06 38 views
1

我知道这个问题之前被问过,但在标记为dublicate之前阅读。Socialite Facebook的驱动程序只获得第一个名字

所以我试图让用户的名字使用Socialite 3.0,但我无法得到它。我收到以下错误:

Undefined index: first_name

我知道这是可能的之前,但不能再。现在不可能吗?根据Facebook的文档,我应该能够得到它。

我尝试了几乎所有可能的答案,我发现通过谷歌搜索和从StackOverflow没有成功。

这是我做过什么:

$providerUser = Socialite::driver('facebook')->stateless()->userFromToken($request->fb_token); 

$attributes = ['first_name' => $providerUser->user['first_name']]; 

return $attributes; 

我也试过这样:

$driver = Socialite::driver('facebook') 
     ->fields([ 
      'first_name' 
     ]); 

$user = $driver->userFromToken($request->fb_token); 

return $user; 

使我有以下错误:

The Response content must be a string or object implementing __toString(), "object" given.

回答

0

我终于还是设法得到它工作。所以我必须做到以下几点:

$providerUser = Socialite::driver('facebook') 
     ->fields([ 
      'first_name' 
     ])->stateless()->userFromToken($request->fb_token); 

$first_name = $providerUser->user['first_name']; 

return $first_name; 
相关问题