Я пытаюсь реализовать функцию автолога в yii2.Yii2 автолог не работает
Так что я позволил автовход в конфигурации:
'user' => [
'identityClass' => 'app\models\User',
'enableAutoLogin' => true,
'loginUrl' => ['account/login', 'account', 'account/index'],
],
Также я добавил RememberMe поле в конфигурации формы
public function scenarios() {
return [
'login' => ['username','password','rememberMe'],
'activate' => ['password','passwordrepeat'],
'register' => ['username', 'mail'],
'setup' => ['username', 'password', 'passwordrepeat', 'mail', 'secretkey'],
];
}
// ...
[
['rememberMe'],
'boolean',
'on' => 'login',
],
Я использую это сейчас при входе в систему:
public function login() {
//var_dump((bool) ($this->rememberMe)); exit();
if (!$this->validate()) {
return false;
}
return Yii::$app->user->login($this->getUser(), (bool) ($this->rememberMe) ? 3600*24*30 : 0);
}
Если я вхожу в систему, функция функции getAuthKey пользователя вызывается и создается новая auth_key.
public function generateAuthKey() {
$this->auth_key = Yii::$app->getSecurity()->generateRandomString();
Helper::save($this);
// Helper is a database helper which will update some rows like last_modified_at and similar in database
}
/**
* @inheritdoc
*/
public function getAuthKey()
{
$this->generateAuthKey();
return $this->auth_key;
}
Но всегда, я вхожу в систему, он не устанавливает некоторые переменные печенья. Мои печенье всегда
console.write_line(document.cookie)
# => "_lcp=a; _lcp2=a; _lcp3=a"
И если я перезагрузить мой браузер, я не вошли в систему. Что я делаю неправильно?
Кажется, что Yii не работает с печеньем правильно:
var_dump(Yii::$app->getRequest()->getCookies()); exit();
Результаты в:
object(yii\web\CookieCollection)#67 (2) { ["readOnly"]=> bool(true) ["_cookies":"yii\web\CookieCollection":private]=> array(0) { } }
Если я получить доступ через $_COOKIE
у меня есть один и то же значение, что и в JS.
Заранее спасибо
Вы решили проблему? – verybadbug
нет, но я не работал над ним, так как mothods здесь не помогает, и я havent успел поработать над этой проблемой – Kai