laravel框架session失效的情况如何解决?要注意什么?
Admin 2021-05-28 群英技术资讯 1089 次浏览
我们知道在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框架的优势:1、可以实现身份验证而无后顾之忧;2、支持缓存后端,因此开发人员可以快速配置缓存;3、与Monolog日志库集成在一起,对开发人员很有帮助;4、设计思想先进,扩展性强;5、社区活跃 , 开源项目多等。
在写网络爬虫时最头疼的问题就是网站方采取了种种措施拒绝网络爬虫的访问,写爬虫的开发者需要用各种手段改进网络爬虫, 以更隐蔽的手段来爬取数据。
今天小编就为大家分享一篇关于laravel 子查询 & join的使用,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
Zip File 函数允许您读取压缩文件。通过 PHP 中的相关函数,你可以实现 zip 文件的解压缩操作。
对初学PHP的人来说,empty()和isset()的用法区别很难搞清楚。针对这个问题,这篇文章就主要给大家介绍一下empty()和isset()的判断变量区别是什么,有这方面学习需求的朋友可以看一下。
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008