社交名流 Google redirect_uri_mismatch

Mic*_*rge 5 google-plus laravel laravel-socialite

我正在尝试使用社交名流登录谷歌,我的 Facebook 登录工作正常,所以我的谷歌应用程序出现问题,任何帮助!

 'google' => [
    'client_id' =>      'app-key',
    'client_secret' =>  'app-secret',
    'redirect' =>       'http://www.shoptizer.com/callback/google',
],
Run Code Online (Sandbox Code Playgroud)

谷歌登录凭证

小智 6

另外还要记住一点,即使您的重定向在 google 控制台中正确定义,但您通过动态更改了redirectUrl,Socialite 也会给出 uri_mismatch_error

return Socialite::with('google')->redirectUrl($redirect_url)->redirect();
Run Code Online (Sandbox Code Playgroud)

所以请注意,您在收到响应时还应该需要定义

Socialite::driver('google')->redirectUrl($redirect_url)->stateless()->user();
Run Code Online (Sandbox Code Playgroud)

其中 $redirect_url 是您的自定义重定向 URL。在谷歌将您重定向到正确的位置后,但即便如此,社交名流也会在最后检查它。


loi*_*pez 2

我找到了这个链接https://blog.damirmiladinov.com/laravel/laravel-5.2-socialite-google-login.html

从本教程:

有时,谷歌需要一些时间来应用客户端配置,如果您收到错误消息redirect_uri_missmatch,请等待几分钟,它应该可以正常工作。

还可以通过以下方式更改重定向 uri:

'google' => [
   'client_id' =>      'app-key',
   'client_secret' =>  'app-secret',
   'redirect' =>       'https://www.shoptizer.com/callback/google',
],
Run Code Online (Sandbox Code Playgroud)

如果您的应用程序由 https 提供,您必须在 google api 和重定向回调上匹配您的 http 方案。