Вы нашли один из грубейших ребер в удобном электронной почте поведении проверки PARSE в :-) Resending электронной проверки используемых для работы путем сброса электронной почты для пользователей текущего адреса, сохранение и проверка будет отправлена. В настоящее время это поведение не работает.
Подтверждение электронной почты отправляется только в случае изменения адреса электронной почты на сервере, что является ужасным поведением. Это означает, что вам нужно установить адрес электронной почты на что-то еще, сохранить, когда это будет успешным, изменить его на исходное электронное письмо пользователей и снова сохранить. Хитрость заключается в том, что первое изменение и сохранение отправят электронное письмо с подтверждением.
Что я сделал, и это ужасно, но это единственный способ, который я нашел вокруг этого, который не отправляет случайные письма с проверкой на временные/недействительные адреса, заключается в том, чтобы очистить электронную почту пользователей, сохранить, установить это снова и сохранить. Это приводит к среднему состоянию, в котором вы попадаете, если настройка/сохранение правильного адреса завершается с ошибкой, но это единственный обходной путь, который я нашел. Код ниже.
let user = PFUser.currentUser()
let email = user.email
user.email = ""
user.saveInBackgroundWithBlock { result, error in
if let e = error {
// Handle the error
return
}
user.email = email
user.saveInBackgroundWithBlock {result, error in
if let e = error {
// If you have an error here you're screwed, as your user now has a blank email address
return
}
}
}
Путь вокруг имеющего пользователь, имеющий бесповоротно сломанный адрес электронной почты может быть, чтобы иметь «OLDEMAIL» поле адреса на пользовательском объекте, и вы установили, что в их адрес электронной почты, а затем их по электронной почте «», и затем сохраните, поэтому, если первое сохранение будет успешным, а второе - неудачным, вы можете попытаться восстановить его, установив email = oldEmail.
Чтобы инициировать проверку почты, требуется изменить значение поля электронной почты. Поэтому просто установите несколько фиктивных писем сначала, а затем оригинальное письмо. – Amit