在我提交HTTP POST时的HTML页面上,它会重定向到另一个页面。
在重定向的页面上,用户可以返回表单页面,然后点击浏览器的后退按钮再次查看提交的值。这不是一个问题,但请考虑这种情况:
用户前往公共网吧并购买信用卡 卡。然后离开Internet Cafe并忘记关闭浏览器。 下一个用户来到那个桌面并点击按钮和繁荣!
一个关于互联网的无知用户可能会责怪公司采取这一行动。
我想要做的是在表单提交后重置HTML表单,并阻止用户返回并查看提交的数据。
我可以使用简单的JavaScript代码来执行此操作。例如,如下所示:
<script>
$("input[type='text']").val(null);
</script>
但是,可以禁用JavaScript。
我正在ASP.NET MVC上开发这个应用程序,但我认为没有办法在服务器端解决这个问题。
有什么想法吗?
答案 0 :(得分:4)
如果方案与您的示例相同,我的建议是永远不会自行处理信用卡信息。有各种支付服务(贝宝和其他),有小工具和apis安全处理数据。
此外,如果您担心处理敏感用户数据,首先应始终使用SSL(https)。其次,您可以使用操作方法上的OutputCacheAttribute告诉浏览器忘记原始表单数据:
[OutputCache(NoStore = true, Location = OutputCacheLocation.None)]
public ActionResult SomeAction() { }
不要使用javascript。
答案 1 :(得分:3)
即使您清除表单字段,它们的值也将作为自动完成条目传递。您可以通过关闭自动完成来停止此操作:
<form autocomplete="off" ...>
我知道它支持Internet Explorer和Firefox for HTML4,并且符合HTML5规范。