[我使用Laravel Socialite制作OAuth,逐步尝试3种不同的指南,并导致相同的错误Trying to access array offset on value of type null
。
My composer.json
"require": {
"php": "^7.3.1",
"fideloper/proxy": "^4.0",
"laravel/framework": "^6.2",
"laravel/socialite": "^4.3",
"laravel/tinker": "^2.0",
"laravel/ui": "^1.2",
"socialiteproviders/vkontakte": "^4.0"
},
也是我的LoginController
public function redirectToProvider()
{
return Socialite::driver('github')->redirect();
}
public function handleProviderCallback()
{
$user = Socialite::driver('github')->user();
dd($user);
}
我遇到了同样的问题,终于找到了解决方案。问题可能是由于Vendor / Laravel / Socialite / src / SocialiteManager.php中位于SocialiteManager.php文件中的app ['request']贬值所致。
此问题的解决方案是通过执行以下步骤:
步骤1:
转到Vendor / Laravel / Socialite / src / SocialiteManager.php[步骤2:将以下代码复制并粘贴到buildProvider方法中。运行php artisan config:cache和php artisan cache:clear清除先前的缓存,然后运行该应用程序。你好!完成了!public function buildProvider($provider, $config) { return new $provider( $this->container->make('request'), $config['client_id'], $config['client_secret'], $this->formatRedirectUrl($config), Arr::get($config, 'guzzle', []) ); }
步骤3:
这是该问题的100%有效解决方案,但是无论如何,如果您有任何问题,都可以通过Bimal's Blog与我联系。谢谢!