Запретить значения формы кэширования браузера в .NET Core 2.2 - PullRequest
0 голосов
/ 13 мая 2019

Веб-приложение ASP.net Core 2.2 MVC

У меня есть несколько форм, в которых я НЕ хочу, чтобы браузер кэшировал / отображал любые ранее введенные данные, когда пользователь вернется на страницу. Я хочу, чтобы элементы / форма НЕ кэшировали какую-либо информацию. Я не просто хочу, чтобы браузер не отображал ранее введенную информацию, я хочу, чтобы она не кэшировалась по соображениям безопасности.

Я попытался украсить метод контроллера с помощью:

[ResponseCache(NoStore = true, Location = ResponseCacheLocation.None)]

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

Я пытался играть с каждым нюансом этого: Промежуточное программное обеспечение для кэширования ответов в ASP.NET Core

Как это делается для всех браузеров в настоящее время?

Ответы [ 2 ]

0 голосов
/ 13 мая 2019

Вы можете использовать autocomplete = "off" для html-элементов, но chrome предотвращает это для некоторых имен, таких как "name", "address" и т. Д.

Эта тема обсуждалась ранее. Chrome игнорирует автозаполнение = "выкл"

0 голосов
/ 13 мая 2019

Похоже, это вызвано функцией автозаполнения браузера:

По умолчанию браузеры запоминают информацию, которую пользователь отправляет через поля на веб-сайтах. Это позволяет браузеру предлагать автозаполнение (то есть предлагать возможные дополнения для полей, в которые пользователь начал вводить данные) или автозаполнение (то есть предварительно заполнять определенные поля при загрузке).

Чтобы отключить эту функцию для формы:

<form autocomplete="off">
    ... 
</form>

Или отключить поле:

<input ... autocomplete="off">

Вот подробное объяснение off

Ключевое слово "off" указывает либо на то, что входные данные элемента управления особенно чувствительны (например, код активации для ядерного оружия); или что это значение никогда не будет использоваться повторно (например, одноразовый ключ для входа в банк), и поэтому пользователю придется каждый раз явно вводить данные, вместо того чтобы полагаться на агента пользователя для введите значение для него; или что документ предоставляет собственный механизм автозаполнения и не хочет, чтобы пользовательский агент предоставлял значения автозаполнения.

Подробнее см. , как отключить автозаполнение для MDN и w3c.org

.

Надеюсь, это поможет.

...