laravel
框架自带session
session
是php
中的一个重要的特性
我们可以用session
会话来跟踪用户
除了在app/Http/Kernel.php
中开启session
还可以在路由
中开启
以下是方法
<?php
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Route;
/*
|--------------------------------------------------------------------------
| API Routes
|--------------------------------------------------------------------------
|
| Here is where you can register API routes for your application. These
| routes are loaded by the RouteServiceProvider within a group which
| is assigned the "api" middleware group. Enjoy building your API!
|
*/
Route::middleware('auth:api')->get('/user', function (Request $request) {
return $request->user();
});
Route::group(['middleware' => ['\Illuminate\Session\Middleware\StartSession']], function ($router) {
Route::get('/session', 'SessionController@index');
Route::get('/getsession', 'getSessionController@index');
});
以下是设置session
的controller
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use Session;
class SessionController extends Controller
{
public function index(Request $request){
$request->session()->put('key','value');//设置session
session(['key1' => 'value1']);
Session::flash('milkcaptcha', 'test');
}
}
以下是获取session
的controller
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use Session;
class getSessionController extends Controller
{
//
public function index(Request $request){
$key = $request->session()->get('key');//获取session的值
echo "key->".$key."<br>";
echo 'key1->'.session('key1');
echo "key".Session::get('milkcaptcha');
}
}
如有问题,可以QQ搜索群1028468525加入群聊,欢迎一起研究技术
转载请注明:laravel解决session失效问题 出自老鄢博客 | 欢迎分享