2015-07-12 33 views
3

嗯,我试图在laravel 5.1中使用社交名称与谷歌登录,我没有问题的范围,但我需要实现访问类型为脱机,有人知道,我该如何在laravel的socialite中进行配置?Laravel社交名片配置访问类型在谷歌登录离线

这是我的连接线

$scopes = [ 
     'https://www.googleapis.com/auth/plus.me', 
     'https://www.googleapis.com/auth/plus.profile.emails.read', 
     'https://www.googleapis.com/auth/gmail.readonly' 

    ]; 
    return Socialize::driver('google')->scopes($scopes)->setAccessType('offline')->redirect(); 

感谢您的帮助

回答

0

打约与Gmail的API,当我字面上仅昨天这个问题。

我假设你想获得一个已经过身份验证的用户的刷新令牌。我找不到在Socialite中本地执行此操作的方法(我不确定从哪里获取setAccessType()方法,因为它不存在于Google或抽象提供程序类中)。

最后,我只是暂时更改了字符串getAuthUrl()方法返回到最后查询字符串参数,通过身份验证过程,然后恢复该文件(以免Composer下次呻吟我我更新了)。

这不是一个理想的解决方案,但希望它有帮助,如果你只是想重新认证自己。

13

也许这个问题最近的回答是最新的回答;看起来泰勒增加了传递可选参数的功能。使用关联数组调用with方法:

$scopes = [ 
    'https://www.googleapis.com/auth/plus.me', 
    'https://www.googleapis.com/auth/plus.profile.emails.read', 
    'https://www.googleapis.com/auth/gmail.readonly' 
]; 
$parameters = ['access_type' => 'offline']; 
return Socialize::driver('google')->scopes($scopes)->with($parameters)->redirect(); 
+1

现在应该是接受的答案。谢谢! –