我是编码的新手,我正在构建我的第一个使用EVE Online ESI API的真实应用程序。我设置了一个登录控制器,该控制器将用户重定向到ESI进行登录并处理回调。到目前为止,我可以成功地将用户名,令牌等数据连接并检索到我的登录控制器中的变量中,并且可以将该变量立即传递给视图。我的问题是弄清楚如何使该变量可用于所有视图。
我尝试使用View :: share('user',$ user);在登录控制器中,但无法正常工作。
在我的web.php中,我有以下路线:
Route::get('login/eveonline', 'EVELoginController@redirectToProvider');
Route::get('login/eveonline/callback', 'EVELoginController@handleProviderCallback');
我的EVELoginController.php文件中有此文件:
<?php
namespace App\Http\Controllers;
use Socialite;
use Laravel\Socialite\Two\User;
use View;
class EVELoginController extends Controller {
/*
| Redirect the user to the EVE online authentication page.
|
| @return \Illuminate\Http\Response
*/
public function redirectToProvider() {
return Socialite::driver('eveonline')->redirect();
}
/*
| Obtain the user information from EVEOnline.
|
| @return \Illuminate\Http\Response
|
*/
public function handleProviderCallback() {
$user = Socialite::driver('eveonline')->stateless()->user();
return View::make('successful-eve-login',$user);
}
}
使用此代码,视图将获取变量,我可以在视图的HTML中使用它。但是该变量不会存储在任何地方,因此以后可以由其他视图检索。将数据导入其他视图的最佳方法是什么?原谅我非常菜鸟,但我正在尝试。