Функция автозаполнения Safari искажает время

Safari Apple автозаполнение ошибки браузер кредитные карты theregister.com

Повторяющиеся сообщения о неточном заполнении форм в Safari тянутся годами. Функция автозаполнения некорректно подставляет срок действия кредитных карт, вызывая проблемы у пользователей.

Функция автозаполнения в браузере Safari от Apple, похоже, страдает от ошибки обработки дат, которая время от времени приводит к некорректному указанию срока действия кредитной карты при заполнении форм.

Предполагаемая проблема является «больной мозолью» для клиентов Apple по крайней мере с 2017 года, когда автор сообщения на форуме Apple Community пожаловался на изменения в поле месяца срока действия кредитной карты при переходе между часовыми поясами.

«Я заметил, что примерно в течение последнего года, когда я путешествую из восточного часового пояса (мой дом) в центральный или даже тихоокеанский часовой пояс, месяц срока действия моей кредитной карты меняется в автозаполнении Safari», — написал пользователь Safari.

Другое сообщение в 2021 году подняло аналогичные опасения.

«Я не знаю, как это воспроизвести», — написал автор. «Каждые несколько месяцев Safari на любом из моих устройств меняет месяц истечения срока действия всех моих сохраненных кредитных карт, уменьшая месяц на 1, например, вместо 10/2029 он меняет его на 09/2029».

Три года спустя другой человек, написавший на форуме Apple Community, сообщил о той же проблеме.

«Уже несколько лет каждый раз, когда я использую автозаполнение на своем компьютере, сроки действия моих кредитных карт (ВСЕХ) всегда меняются на месяц раньше», — говорится в сообщении за 2024 год. «Я думал, что это просто сбой на моем компьютере, но я купил новый компьютер и ничего не переносил со старого, и это все равно происходит».

Не связанный с этим отчет об ошибке автозаполнения от 2024 года предполагает, что если проблема и существует, то она кроется в коде Safari, принадлежащем Apple, а не в движке WebKit с открытым исходным кодом.

Где бы ни находился баг, ненадежная обработка дат кредитных карт в Safari поддерживает наполненную жалобами ветку на Reddit уже четыре года. И сообщаемое смещение месяцев отмечалось и в других ветках.

The Register не смог воспроизвести описанное поведение, но читатель настаивает, что проблема все еще существует.

«Функция AutoFill Safari иногда неправильно заполняет срок действия кредитной карты», — пояснил читатель. «Моя кредитная карта истекает в декабре, но иногда Apple любезно вводит ноябрь».

«Чтобы было ясно, карта сохраняется правильно при проверке в настройках», — добавил наш источник. «Ошибка на единицу происходит только при заполнении формы в Safari, и не постоянно».

Один из возможных способов, которым это может произойти, заключается в том, что код Safari Autofill реализовал срок действия, используя тип DateComponent из Swift и сохранил его как объект Calendar с UTC в качестве идентификатора часового пояса. Это привязало бы дату к определенному времени. Если бы компоненты даты были извлечены в тихоокеанском времени, значение было бы представлено как восемь часов вперед (PST). Таким образом, 01.09.2027 в 00:00 отображалось бы как 31.08.2027 в 16:00.

Apple не сразу ответила на запрос о комментарии, но нам сообщили, что служба поддержки Apple — или «Helpless Desk», как выразился наш источник — посоветовала очистить кэш браузера и повторно ввести данные затронутой кредитной карты.

Если это сработает, это будет означать, что обработка кэшированных данных в Safari в контексте дат автозаполнения может потребовать пересмотра.

Apple не ведет общедоступную базу ошибок, а поддерживаемый сообществом OpenRadar не проливает свет на эти сообщения. ®

Всегда имейте в виду, что редакции могут придерживаться предвзятых взглядов в освещении новостей.

Похожие новости: