Как на самом деле работает диспетчер паролей Google Chrome?
Кажется, что в диспетчере автозаполнения / паролей Chrome происходит довольно много волшебства. Я читал статью в Google на эту тему , но эти поля не всегда запускаются правильно.
Когда я смотрю на https://developer.apple.com/ (февраль 2021 г.), мой адрес электронной почты заполняется, но в нем нет
name
ни
autocomplete
атрибут, поэтому единственное объяснение, которое я могу придумать, - это своего рода догадка: отлично, но как мне это воспроизвести?
Моя собственная работа, которая привела меня к этому расследованию, заключалась в попытке создать аналогичный двухэтапный вход (указать имя пользователя, отправить, затем поле пароля открывается в случае успеха), но хром не заполняет имя пользователя предварительно, если пароль не указан, несмотря на с помощью
<input name="username" autocomplete="username" />
. После входа в систему Chrome сохраняет это имя пользователя / пароль, но вход не использует его в зависимости от
<input />
поля присутствуют. FWIW, сафари, похоже, в порядке только с полем имени пользователя, но требует дважды TouchID для этого вида потока.
Что происходит? Создать ящик с кодами сложно, не настраивая сервер для входа. Я также не уверен, как отлаживать автозаполнение, если это вообще возможно. Есть ли еще документация о том, как работает эта магия, если не считать программных попыток заполнения форм с помощью API-интерфейсов браузера, которые пока еще недостаточно широко поддерживаются (
window.PasswordCredential
)?