firebase currentuser не имеет значение null, даже если сеанс истек или пользователь вышел из системы - PullRequest
0 голосов
/ 10 апреля 2019

Обычно мы проверяем, вошел ли пользователь в систему или нет так:

let user = Auth.auth().currentUser

if user != nil {
 // user is logged in
} else {
 // user is logged out
}

Это не работает, потому что в моем случае пользователь никогда не nil. Всегда Auth.auth().currentUser возвращает действительного пользователя. Я пробовал также addStateDidChangeListener, но пользователь никогда не становится nil. Даже когда я выхожу или сеанс истек. По истечении сеанса идентификатор пользователя остается действительным (не nil), хотя прослушиватели-наблюдатели больше не выполняются.

Я много раз гуглял на эту тему, но все ответы, которые я нашел, - это два вышеупомянутых решения. Я изменил правила firebase с прав на чтение / запись на:

"rules": {
    ".read": "auth != null",
    ".write": "auth != null"
  }

Но без удачи.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...