Laravel 5 Laravel社交名媛:如何在运行时更改重定向uri?

Laravel 5 Laravel社交名媛:如何在运行时更改重定向uri?,laravel-5,laravel-socialite,Laravel 5,Laravel Socialite,是否可以在运行时更改config/services.php中设置的redirect_uri的值 我试着这样做: return$socialite->driver('facebook')->redirectUrl(newUrl)->redirect() 但是它抛出一个错误,指出重定向uri应该与OAuth对话框中的uri匹配。进一步检查错误消息后,redirect_uri的值为空,因此redirectUrl()方法显然不起作用 附言: 这是我在composer.json中定义的社交版本: “lar

是否可以在运行时更改config/services.php中设置的redirect_uri的值

我试着这样做:

return$socialite->driver('facebook')->redirectUrl(newUrl)->redirect()

但是它抛出一个错误,指出重定向uri应该与OAuth对话框中的uri匹配。进一步检查错误消息后,redirect_uri的值为空,因此redirectUrl()方法显然不起作用

附言:

这是我在composer.json中定义的社交版本:


“laravel/socialite”:“^2.0”解决方案是:

public function redirectToProvider($accountType, $provider)
{
    return Socialite::driver($provider)
        ->with(['redirect_uri' => "YOUR_NEW_URL"])
        ->stateless()
        ->redirect();
}

使用此方法,您可以覆盖http请求中的任何值(包括作用域)。

我这样做并工作,google将我重定向到新URL,但我收到了一个新错误“redirect\u uri\u mismatch”,我想这是因为此新URL与config/env中的URL不同。有什么想法吗?另一件事是,根据最初的问题,“无状态()”在这种情况下是不必要的。“无状态”仅在我们不想使用会话(如API auth)时才有必要。