我创建了一个laravel socialte设置。它现在完全正常工作,现在显示错误(如下)。 1)我已经更改了client_secret 2)创建了新的oauth凭据 仍然无法正常工作
public function redirectToGoogle()
{
return Socialite::driver('google')->redirect();
}
public function handleGoogleCallback()
{
$user = Socialite::driver('google')->stateless()->user();
$user->getId(); // 1472352
$user->getNickname(); // "overtrue"
$name= $user->getName(); // "安正超"
$emailid= $user->getEmail();
$pic= $user->getAvatar(); // "anzhengchao@gmail.com"
return->redirect('welcome');
}
我创建了带有client_secret和客户端ID的env文件
"""
Client error: `POST https://accounts.google.com/o/oauth2/token` resulted in a `400 Bad Request` response:\n
{\n
"error" : "invalid_grant",\n
"error_description" : "Code was already redeemed."\n
}\n
"""
答案 0 :(得分:2)
当Google将身份验证码 code
返回给您的社交网站时,它只能用于与访问令牌交换一次。多次执行操作会导致错误Code was already redeemed
。
流程应该是:
?code=.....
?code
并与Google交换以获取用户的访问令牌。这只能在每个流程中完成一次。