防止頁面重複提交,插入重複資料的解決辦法

2022-03-07 06:18:09 字數 502 閱讀 8022

新做的物業收費系統,當使用者點選收費按鈕的時候,如果點選多次會生成兩張收款單,發現問題後通過

在按鈕click的js事件裡面加了

lnkcharge.attributes[

"onclick"] 

=this

.getpostbackeventreference(

this

.lnkcharge) +"

;this.disabled=true;"; 

//防止重複提交

本機測試通過,不過第二天使用者還是有重複收款單出現...

感覺這種控制在客戶端做還是不是很保險,所以把解決的方向放在了後台**裡面,不過前台的禁按鈕還是得有的

因為我們做的收款單表是用guid做id的,所以我們可以在頁面!ispostboack的時候生成乙個臨時的guid,存到viewstate中if(

!ispostback)

guid collectionid = guid.empty;

trycatch

如何防止頁面重複提交

由於重複點選或者網路重發,或者nginx重發等情況會導致資料被重複提交 解決辦法 集群環境 採用token加redis redis單執行緒的,處理需要排隊 單jvm環境 採用token加redis或token加jvm記憶體 處理流程 1.資料提交前要向服務的申請token,token放到redis或...

如何防止頁面重複提交

思路 重複提交有兩方面的含義,一是操作方面的重複提交,旨在說明乙個客戶端,一次只能傳送乙個請求到服務端,如果發出後未收到服務端響應,再次提交,則視為無效提交 重複了 二是業務方面,同乙個表單,服務端處理了兩次,兩次都是合法的操作 不違反第一種含義 但是表單可能被處理了兩次,如像乙個賬號轉賬了兩次,金...

防止重複提交

在jsp頁面的form中,新增 然後在提交的action類中 suppresswarnings unchecked scope prototype controller results parentpackage default interceptorrefs value interceptorre...