[PHP]Laravel无法使用COOKIE和SESSION的解决方法
COOKIE和SESSION的具体使用百度和官方文档上都有。
但是,文档里没有说明必须经过相应的中间件才能使用,百度搜索结果都是彼此copy的bullshit!!!
其实最终解决办法很简单,完全不是网上所说的什么 cookie 写入方法不对的问题!
只是因为 当时要写入 的那个 控制器,middleware 不是 web 而已。
解决方法,当然是 只能将这个控制器 放在 middleware = web 里
例如我要加一个 城市切换的写cookie的逻辑
路由定义如下:
Route::group(['namespace' => 'Admin', 'prefix' => 'admin', 'middleware' => 'web'], function () { Route::get('/switchCity', 'IndexController@switchCity')->name('admin.switchCity'); });
然后,在控制器里的读取和写 的代码,都是用原生的:
写逻辑:
setcookie('curCityId', $this->defaultCityId, 0, '/admin/');
读逻辑:
$_COOKIE['curCityId'];
参考:
https://blog.csdn.net/KaneCSDN/article/details/84478286
https://blog.csdn.net/Two_steps/article/details/80167504
本博客地址: wukong1688
本文原文地址:https://www.cnblogs.com/wukong1688/p/10928991.html
转载请著名出处!谢谢~~
今日心得:
苦难是人生中一笔巨大的财富!