Сбросить HTML-форму после отправки формы и запретить пользователю возвращаться и просматривать отправленные данные - PullRequest
0 голосов
/ 30 декабря 2011

На странице HTML, когда я отправляю отправку HTTP POST, в результате она перенаправляется на другую страницу.

На перенаправленной странице пользователь может вернуться на страницу формы и снова увидеть отправленные значения, нажавкнопка возврата браузера.Это не большая проблема, но подумайте об этом сценарии:

Пользователь заходит в общедоступное интернет-кафе и покупает что-то с помощью кредитной карты.Затем покидает интернет-кафе и забывает закрыть браузер.Следующий пользователь приходит к этому столу и нажимает кнопку «Назад» и бум!

Невежественный пользователь интернета может обвинить компанию в этом действии.

Я хотел бы сделать следующее:сбросьте форму HTML после отправки формы и запретите пользователю возвращаться и просматривать отправленные данные.

Я могу использовать простой код JavaScript для этого.Например, что-то вроде ниже:

<script>
    $("input[type='text']").val(null);
</script>

Но JavaScript можно отключить.

Я занимаюсь разработкой этого приложения на ASP.NET MVC, но я не думаю, что есть какой-либо способрешить эту проблему на стороне сервера.

Есть идеи?

Ответы [ 2 ]

4 голосов
/ 30 декабря 2011

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

Кроме того, если вы беспокоитесь о работе с конфиденциальными пользовательскими данными, прежде всего вы всегда должны использовать SSL (https).).Во-вторых, вы можете указать браузеру забыть исходные данные формы, используя атрибут OutputCacheAttribute в вашем методе действия:

[OutputCache(NoStore = true, Location = OutputCacheLocation.None)]
public ActionResult SomeAction() { }

Не используйте для этого javascript.

3 голосов
/ 30 декабря 2011

Даже если вы очистите поля формы, их значения будут доставлены как записи автозаполнения.Вы можете остановить это, отключив автозаполнение:

<form autocomplete="off" ...>

Что, как я знаю, поддерживается Internet Explorer и Firefox для HTML4 и содержится в спецификации HTML5.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...