Я работаю над адаптивным приложением, которое использует Amazon Cognito Identity для JS для управления регистрацией пользователей, входами и т.д. Мой код работает большую часть времени и настроен таким образом, что вызовы на услуги Cognito, такие как CognitoUser.authenticateUser() метод может обрабатывать как успех, так и неудачу.
Проблема в том, что на той неделе, когда я работал над этим, служба, похоже, просто не работает для небольших карманов времени. Я буду работать над новым компонентом, независимо от вызовов Cognito (так что это не должно влиять на их выполнение), и внезапно запуск приложения просто зависает при попытке входа в систему. Фактически все запросы сервера, использующие API, зависают во время этих периоды, будь то вход в систему (с действительными и недействительными учетными данными) или регистрация нового пользователя, я могу отслеживать выполнение кода вплоть до того момента, когда выполняется вызов, и затем не производится вывод. Соответствующий код для моей функции входа в систему показан ниже;
console.log('About to authenticate user');
cognitoUser.authenticateUser(authenticationDetails, {
onSuccess: function (result) { // login successfull
console.log("login successfull")
CognitoUserLogin.setUpSession(result)
callback(true, result)
},
onFailure: function(err) { // login failed
console.log(err)
callback(false, err)
}
})
Как показывает этот код, консольные журналы прямо перед вызовом "cognitoUser.authenticateUser" и должны немедленно регистрироваться, как только функция вернется с успехом или сбой. Это ожидаемое поведение можно наблюдать в большинстве случаев, но, когда обнаружено, что эти вызовы зависают, консоль только выводит первую строку "О проверке подлинности пользователя" и ничего больше, показывая, что вызов метода не перезвонит с успехом или неудачей.
Поскольку этот код, похоже, работает так, как он должен почти все время, похоже, что на моем конце нет проблемы, а скорее с серверами Cognito, однако, согласно их служебной панели мониторинга работоспособности (https://status.aws. amazon.com/) их серверы работают нормально по всему миру во всех этих временных пространствах, когда аутентификация не удалась для меня.
Мне не удалось найти кого-либо, кто упоминает об этом снижении обслуживания, поэтому я очень устал, что он может продолжаться, и мое приложение регулярно непригодно для кажущегося случайного количества времени. Кто-нибудь еще столкнулся с этой проблемой в последнее время? Я только когда-либо испытывал это в начале дня, и регион для всех моих серверных вызовов - "eu-west-1", который должен иметь наименьшую задержку для меня (живущей в Ирландии).
Чтобы быть конкретным, мое приложение начало зависать при попытке входа в систему или регистрации пользователя в начале субботы 5 августа 2017 года (GMT) и внезапно снова работало позже той ночью. В то время как я работал над приложением с моей командой вчера (8 августа), звонки Cognito внезапно начали висели снова всего за 10-20 минут в полдень, а затем снова (чудом) начали работать. Сегодня он прекратил работать для меня примерно в 15:30 и до сих пор не отвечает почти час спустя. Хотя это делает определенные аспекты развития невозможными, поскольку они зависят от учетных данных входа в систему для доступа к услугам Amazon, моя главная проблема заключается в том, что в сборке выпусков будут те же проблемы, которые кажутся более регулярными и болезненными (что было бы кошмаром для нового выпущенное приложение).
Любая обратная связь будет оценена, даже люди, говорящие, что у них есть или не были эти проблемы при работе с аутентификацией Cognito
Оказывается, это не проблема с серверами AWS, и это не проблема с моей логиной. Попробовав старую резервную копию моего кода, я отлично выполнил логин, и я сузил его до того, что в том числе отдельный скрипт, над которым я все еще работал, предотвратил вызов callback. Несмотря на то, что этот сценарий упоминается только на более поздней стадии, приложение отказывается записывать на консоль результат входа в систему. Я до сих пор не знаю, почему именно новый скрипт вызывает неудачу приложения в несвязанных местах, но я "Не получается никаких ошибок в здании или в выводе на консоль, поэтому независимо от того, что проблема, похоже, молча убивает выполнение функции, которая МОЖЕТ привести к запуску сценария багги. странный