0

我有带有提交按钮的网页,当用户按 F5 刷新页面提交页面后,它会执行上次请求所做的事情。

我通过在自身后面的 C# 代码中的 submit_click 函数中再次重定向同一页面来省略这一点。

但我觉得当用户点击数增加时会产生一些性能问题。

我也尝试过 Server.Transfer。但它们都不是防止问题的正确解决方案。

有什么解决方案可以解决这个问题吗?

谢谢大家。

4

2 回答 2

0

您可以使用Post/Redirect/Get 模式来最大程度地减少表单重新提交的问题。

但是,这并不完全安全。用户仍有可能通过单击后退按钮并再次重新加载来重新提交表单。不过,浏览器会在重新提交之前进行确认。

有用的文章。

于 2012-10-30T07:03:56.793 回答
0

您可以尝试为用于提交表单的按钮添加一个值,例如 value="isClicked"。

在处理请求之前,您可以检查该按钮是否具有值。

if (Request.Form["answer-thread"] != null && String.Equals(Request.Form["answer-thread"], "isClicked"))

{
 var answerText = Request.Form["answer-text"].ToString();
.... do your form logic. 
}

刷新页面时,该按钮将为空。希望这对你有用

最好的问候亨里克

于 2012-11-06T08:54:42.167 回答