通过cookies判断控制器权限没有cookies跳转到登录页面或者给个提示信息 [ 2.0 版本 ]
yii2 里控制器里通过接口登录, 跳转到用户中心页面,数据库都不在本地都是访问的接口, 用户名保存到cookies中, 我想让他访问别的控制器中, 判断cookies用户名是否为空,为空就跳转到登录页面, 有办法每个控制器运行的时候都做下判断 cookies的用户吗?
最佳答案
-
KilluaCHEN 发布于 2015-07-20 11:40 举报
@ony 报错原因,应该是
/user/login
方法所在的Controller
也继承了BaseController
!导致死循环了
其他 3 个回答
-
KilluaCHEN 回答于 2015-07-20 09:53 举报
- 自定义一个
BaseController
继承至Controller
- 接着在
BaseController
中重写init
方法,在init
方法中检查Cookie
- 然后让其他可访问的
Controller
继承至BaseController
共 1 条回复public function init() { $cookies = Yii::$app->request->cookies; $userId = $cookies->getValue('userId', 'false'); if(empty($userId)||$userId=='false') { return $this->redirect('/index.php/user/login'); }else{ return $this->render('index'); } //parent::init(); $this->layout='@app/views/layouts/appLayouts.php'; }
我这个样子 页面报错此页面不能被重定向
╃巡洋艦㊣ 觉得很赞 - 自定义一个
ony
注册时间:2015-06-02
最后登录:2016-03-14
在线时长:25小时4分
最后登录:2016-03-14
在线时长:25小时4分
- 粉丝18
- 金钱450
- 威望20
- 积分900