laravel框架session失效的情况如何解决?要注意什么?
Admin 2021-05-28 群英技术资讯 958 次浏览
我们知道在laravel中,无法使用$_SESSION,那么就只能用框架的session。不少新手朋友都有遇到laravel框架session失效的问题,那么要怎么样解决呢?下面我们一起来看看解决办法。
贴上代码
<?php namespace App\Http\Controllers; use App\Http\Requests; use Request; use Illuminate\Support\Facades\Session; class CommonController extends Controller { static function login(){ $team_id=Request::input('team_id'); $uuid=Request::input('uuid'); $key=Request::input('key'); if(empty($team_id)){ $team_id=Session::get('team_id'); } if(empty($uuid)){ $uuid=Session::get('uuid'); } if(empty($key)){ $key=Session::get('key'); } // session(['team_id'=>$team_id]); Session::put('team_id',$team_id); Session::put('uuid',$uuid); Session::put('key',$key); Session::save(); } public static function islogin(){ $team_id=Session::get('team_id'); $uuid=Session::get('uuid'); $key=Session::get('key'); if(!empty($team_id)&&!empty($uuid)){ if($key != 1234){ echo "没有权限"; exit; } }else{ echo "没有权限"; exit; } } }
在当前页面可以到SESSION,但是跨页面就失效,以为是AJAX的CSRF验证问题,查找试了不是,然后经过打印发现2个SESSION不一致,继续检查最后发现是在定义路由的时候没有定义在同一个分组内所以导致SESSION不一致。
将路由重新定义好了
Route::group(['middleware'=>'web'],function() { Route::any('/report/billviews', 'report\UserbillController@BillViews'); Route::any('/report/index','report\UseraccessController@index');//把需要用到session的路由请求全部放在web组里。 Route::any('/report/countprice', 'report\UserbillController@CountPrice'); Route::any('islogin', 'CommonController@islogin'); Route::any('login', 'CommonController@login'); });
还有个坑laravel5.2的session必须要过中间件
关于解决laravel session失效问题的方法就分享到这,需要的朋友可以参考,希望文本能对大家有帮助。如果还想要了解更多解决laravel session失效的内容,大家可以继续关注其他文章。
文本转载自脚本之家
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
今天小编就为大家分享一篇laravel 查询数据库获取结果实现判断是否为空,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
下面由phpstorm教程栏目给大家介绍解决phpStorm使用vue提示"Attribute v-xxx is not allowed here"的方法,希望对需要的朋友有所帮助!
如何使用yii2生成验证码?验证码的使用可以说是很频繁的了,我们在做账号登陆的时候,经常需要做验证码验证,那么我们具体要如何做一个验证码呢?YII2中已经帮我们做好了封装,下面我们就来看看YII2框架中验证码的使用方法。
这篇文章主要介绍了php适配器模式简单应用,结合实例形式分析php适配器模式原理及使用适配器模式创建的天气预报查询接口功能相关操作技巧,需要的朋友可以参考下
在协程编程中可直接使用try/catch处理异常。但必须在协程内捕获,不得跨协程捕获异常。不仅是应用层throw的Exception,底层的一些错误也是可以被捕获的,如function、class、method不存在。
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008