Skip to content

Instantly share code, notes, and snippets.

@maimai-swap
Created January 1, 2016 11:37
Show Gist options
  • Save maimai-swap/1a2b14979e5f314600bb to your computer and use it in GitHub Desktop.
Save maimai-swap/1a2b14979e5f314600bb to your computer and use it in GitHub Desktop.
Laravel 5.2 socialite twitter認証で$this->request->getSession()がnullを返すのだが、これは何のせいかとローカルでやってたのをhomesteadでも試したけど同じ結果になった。
[2016-01-01 20:27:57] local.ERROR: Symfony\Component\Debug\Exception\FatalThrowableError: Fatal error: Call to a member function set() on null in /home/vagrant/tweetranking/vendor/laravel/socialite/src/One/AbstractProvider.php:49
Stack trace:
#0 /home/vagrant/tweetranking/app/Http/Controllers/Auth/AuthController.php(82): Laravel\Socialite\One\AbstractProvider->redirect()
#1 [internal function]: App\Http\Controllers\Auth\AuthController->redirectToProvider()
#2 /home/vagrant/tweetranking/vendor/laravel/framework/src/Illuminate/Routing/Controller.php(76): call_user_func_array(Array, Array)
#3 /home/vagrant/tweetranking/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(146): Illuminate\Routing\Controller->callAction('redirectToProvi...', Array)
#4 /home/vagrant/tweetranking/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(94): Illuminate\Routing\ControllerDispatcher->call(Object(App\Http\Controllers\Auth\AuthController), Object(Illuminate\Routing\Route), 'redirectToProvi...')
#5 [internal function]: Illuminate\Routing\ControllerDispatcher->Illuminate\Routing\{closure}(Object(Illuminate\Http\Request))
#6 /home/vagrant/tweetranking/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(139): call_user_func(Object(Closure), Object(Illuminate\Http\Request))
#7 /home/vagrant/tweetranking/app/Http/Middleware/RedirectIfAuthenticated.php(24): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
#8 [internal function]: App\Http\Middleware\RedirectIfAuthenticated->handle(Object(Illuminate\Http\Request), Object(Closure))
#9 /home/vagrant/tweetranking/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(124): call_user_func_array(Array, Array)
#10 [internal function]: Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
#11 /home/vagrant/tweetranking/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(30): call_user_func(Object(Closure), Object(Illuminate\Http\Request))
#12 [internal function]: Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}(Object(Illuminate\Http\Request))
#13 /home/vagrant/tweetranking/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(102): call_user_func(Object(Closure), Object(Illuminate\Http\Request))
#14 /home/vagrant/tweetranking/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(96): Illuminate\Pipeline\Pipeline->then(Object(Closure))
#15 /home/vagrant/tweetranking/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(54): Illuminate\Routing\ControllerDispatcher->callWithinStack(Object(App\Http\Controllers\Auth\AuthController), Object(Illuminate\Routing\Route), Object(Illuminate\Http\Request), 'redirectToProvi...')
#16 /home/vagrant/tweetranking/vendor/laravel/framework/src/Illuminate/Routing/Route.php(174): Illuminate\Routing\ControllerDispatcher->dispatch(Object(Illuminate\Routing\Route), Object(Illuminate\Http\Request), 'App\\Http\\Contro...', 'redirectToProvi...')
#17 /home/vagrant/tweetranking/vendor/laravel/framework/src/Illuminate/Routing/Route.php(140): Illuminate\Routing\Route->runController(Object(Illuminate\Http\Request))
#18 /home/vagrant/tweetranking/vendor/laravel/framework/src/Illuminate/Routing/Router.php(703): Illuminate\Routing\Route->run(Object(Illuminate\Http\Request))
#19 [internal function]: Illuminate\Routing\Router->Illuminate\Routing\{closure}(Object(Illuminate\Http\Request))
#20 /home/vagrant/tweetranking/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(139): call_user_func(Object(Closure), Object(Illuminate\Http\Request))
#21 [internal function]: Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
#22 /home/vagrant/tweetranking/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(102): call_user_func(Object(Closure), Object(Illuminate\Http\Request))
#23 /home/vagrant/tweetranking/vendor/laravel/framework/src/Illuminate/Routing/Router.php(705): Illuminate\Pipeline\Pipeline->then(Object(Closure))
#24 /home/vagrant/tweetranking/vendor/laravel/framework/src/Illuminate/Routing/Router.php(678): Illuminate\Routing\Router->runRouteWithinStack(Object(Illuminate\Routing\Route), Object(Illuminate\Http\Request))
#25 /home/vagrant/tweetranking/vendor/laravel/framework/src/Illuminate/Routing/Router.php(654): Illuminate\Routing\Router->dispatchToRoute(Object(Illuminate\Http\Request))
#26 /home/vagrant/tweetranking/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(246): Illuminate\Routing\Router->dispatch(Object(Illuminate\Http\Request))
#27 [internal function]: Illuminate\Foundation\Http\Kernel->Illuminate\Foundation\Http\{closure}(Object(Illuminate\Http\Request))
#28 /home/vagrant/tweetranking/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(139): call_user_func(Object(Closure), Object(Illuminate\Http\Request))
#29 /home/vagrant/tweetranking/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/CheckForMaintenanceMode.php(44): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
#30 [internal function]: Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode->handle(Object(Illuminate\Http\Request), Object(Closure))
#31 /home/vagrant/tweetranking/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(124): call_user_func_array(Array, Array)
#32 [internal function]: Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
#33 /home/vagrant/tweetranking/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(102): call_user_func(Object(Closure), Object(Illuminate\Http\Request))
#34 /home/vagrant/tweetranking/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(132): Illuminate\Pipeline\Pipeline->then(Object(Closure))
#35 /home/vagrant/tweetranking/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(99): Illuminate\Foundation\Http\Kernel->sendRequestThroughRouter(Object(Illuminate\Http\Request))
#36 /home/vagrant/tweetranking/public/index.php(53): Illuminate\Foundation\Http\Kernel->handle(Object(Illuminate\Http\Request))
#37 {main}
@maimai-swap
Copy link
Author

Laravel 5.2 socialite twitter認証を試していて、

Laravel\Socialite\One\AbstractProvider->redirect()の中で$this->request->getSession()nullを返すのでエラーになる。
これは環境のせいかなとおもってhomesteadにして試してみたのだけど、同じエラーが出るわ…。

参考にしたソースコードはこちら。
ほぼこの御方の言うとおりにやってるのだがなんでかわからんのでとりあえず泣いてる。
http://goodheads.io/2015/08/24/using-twitter-authentication-for-login-in-laravel-5/

Laravelのバージョン5.1に下げようかな。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment