[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

转载请著名出处!谢谢~~

 

今日心得:

苦难是人生中一笔巨大的财富!

 

posted @ 2019-05-27 09:21  wukong1688  阅读(979)  评论(0编辑  收藏  举报