laravel框架session失效的情况如何解决?要注意什么?
Admin 2021-05-28 群英技术资讯 1017 次浏览
我们知道在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进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
PhpStorm是一款很好用的PHP集成开发工具,新手了解PhpStorm的相关使用是很有必要的,对此这篇文章给大家分享的是有关PhpStorm怎么用的内容,小编觉得挺实用的,因此分享给大家做个参考,有需要的朋友可以看一看。
今天小编就为大家分享一篇解决thinkPHP 5 nginx 部署时,只跳转首页的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
PHP7和PHP5的对象有哪些差异呢?一些朋友可能会遇到这方面的问题,对此在下文小编向大家来讲解一下,内容详细,易于理解,希望大家阅读完这篇能有收获哦,有需要的朋友就往下看吧!
有很多小伙伴会遇到代码空行特别多,但是一行一行删除肯定很烦躁,这时候就需要用到批量删除空行。怎么批量删除空行呢?我的办法是用正则把所有空行找到,然后一键全部替换。
这篇文章主要介绍了PHP封装的简单连接MongoDB类,涉及php针对MongoDB数据库的简单连接、数据插入、查询等相关操作技巧,需要的朋友可以参考下
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008