У меня сейчас очень странная проблема. Первоначально я думал, что это связано с областью, потому что я изначально сохранял токен аутентификации в области. В конце концов мне пришлось переместить брелок. Проблема заключается в следующем: при успешной регистрации нового пользователя токен авторизации сохраняется в цепочке для ключей для повторного использования, чтобы достичь конечной точки, прошедшей проверку подлинности. Однако для каждого нового пользователя, который регистрируется и пытается сделать запрос к аутентифицированному маршруту, он постоянно сообщает неверный токен авторизации. Но в тот момент, когда новый пользователь завершает работу приложения и перезапускает его, ошибка исчезает, и новый пользователь, который ранее не мог сделать запрос к аутентифицированной конечной точке, теперь сможет это сделать. Я исследовал корень бесчисленное количество раз, но до сих пор не могу понять, как я буду признателен за вашу поддержку и советы по решению этой проблемы. когда я печатаю токен аутентификации из цепочки ключей в тот момент, когда пользователь делает запрос, токен становится доступным. вот как я получаю токен из цепочки для ключей
class UserData {
static let instance = UserData()
private init() {}
func userAuthToken() -> String {
guard let authToken = KeychainWrapper.standard.string(forKey: Const.authToken) else { return ""}
return authToken
}
func userisAuthenticated() -> Bool {
guard let isEnabled = KeychainWrapper.standard.bool(forKey: Const.isEnabled) else { return false}
return isEnabled
}
func userRefreshToken() -> String {
guard let refreshToken = KeychainWrapper.standard.string(forKey: Const.refreshToken) else { return ""}
return refreshToken
}
}
это код для сохранения в связке ключей во время регистрации
KeychainWrapper.standard.set(true, forKey: Const.isEnabled)
KeychainWrapper.standard.set("2308r20390f", forKey: Const.authToken)
KeychainWrapper.standard.set("2729894820", forKey: Const.refreshToken)