精品专区-精品自拍9-精品自拍三级乱伦-精品自拍视频-精品自拍视频曝光-精品自拍小视频

網(wǎng)站建設(shè)資訊

NEWS

網(wǎng)站建設(shè)資訊

web開(kāi)發(fā)中如何解決表單重復(fù)提交的三種情況-創(chuàng)新互聯(lián)

這篇文章主要為大家展示了“web開(kāi)發(fā)中如何解決表單重復(fù)提交的三種情況”,內(nèi)容簡(jiǎn)而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領(lǐng)大家一起研究并學(xué)習(xí)一下“web開(kāi)發(fā)中如何解決表單重復(fù)提交的三種情況”這篇文章吧。

讓客戶滿意是我們工作的目標(biāo),不斷超越客戶的期望值來(lái)自于我們對(duì)這個(gè)行業(yè)的熱愛(ài)。我們立志把好的技術(shù)通過(guò)有效、簡(jiǎn)單的方式提供給客戶,將通過(guò)不懈努力成為客戶在信息化領(lǐng)域值得信任、有價(jià)值的長(zhǎng)期合作伙伴,公司提供的服務(wù)項(xiàng)目有:域名與空間、網(wǎng)頁(yè)空間、營(yíng)銷軟件、網(wǎng)站建設(shè)、門(mén)源網(wǎng)站維護(hù)、網(wǎng)站推廣。

第一種情況:提交完表單以后,不做其他操作,直接刷新頁(yè)面,表單會(huì)提交多次。

- 在servlet中寫(xiě)一句輸出,用來(lái)判斷是否提交多次

System.out.println("已經(jīng)插入");
request.getRequestDispatcher("/login_success.jsp").forward(request, response);

- 這樣的話,刷新多少次,就會(huì)在控制器顯示多少個(gè)“已經(jīng)插入”。

web開(kāi)發(fā)中如何解決表單重復(fù)提交的三種情況

- 根本原因:Servlet處理完請(qǐng)求以后,直接轉(zhuǎn)發(fā)到目標(biāo)頁(yè)面,這樣整個(gè)業(yè)務(wù)只發(fā)送了一次請(qǐng)求,那么當(dāng)你在瀏覽器中點(diǎn)擊刷新會(huì)一直都會(huì)刷新之前的請(qǐng)求。

- 解決方法:不用轉(zhuǎn)發(fā)到另一頁(yè)面,采用重定向的方式跳轉(zhuǎn)到目標(biāo)頁(yè)面

response.sendRedirect("/day0815-session/login_success.jsp");

web開(kāi)發(fā)中如何解決表單重復(fù)提交的三種情況

第二種情況:在提交表單時(shí),如果網(wǎng)速較差,可能會(huì)導(dǎo)致點(diǎn)擊提交按鈕多次,這種情況也會(huì)導(dǎo)致表單重復(fù)提交。

- 解決方法:點(diǎn)擊提交按鈕之后,使按鈕不可用。通過(guò)js完成


 window.onload = function(){ 
  //獲取按鈕的對(duì)象
  var btn = document.getElementById("btn");
  //為按鈕綁定單擊響應(yīng)函數(shù)
  btn.onclick = function(){  
   //點(diǎn)擊以后使按鈕不可用
   this.disabled=true; 
   //當(dāng)將提交按鈕設(shè)置為不可用時(shí),會(huì)自動(dòng)取消它的默認(rèn)行為
   //手動(dòng)提交表單
   this.parentNode.submit(); 
  };
 };



user:
password
 

- 注意“提交”按鈕,此時(shí)已經(jīng)不可按!

web開(kāi)發(fā)中如何解決表單重復(fù)提交的三種情況

第三種情況:表單提交成功以后,直接點(diǎn)擊瀏覽器上回退按鈕,不刷新頁(yè)面,然后點(diǎn)擊提交按鈕再次提交表單。

- 根本原因:因?yàn)榉?wù)器在處理請(qǐng)求時(shí),不會(huì)檢查是否為重復(fù)提交的請(qǐng)求。

- 解決方案:

使用一個(gè)token的機(jī)制

- token就是令牌的意思

- 服務(wù)器在處理請(qǐng)求之前先來(lái)檢查瀏覽器的token

- token由服務(wù)器來(lái)創(chuàng)建,并交給瀏覽器,瀏覽器在向服務(wù)器發(fā)送請(qǐng)求時(shí)需要帶著這個(gè)token

- 服務(wù)器處理請(qǐng)求前檢查token是否正確,如果正確,則正常處理,否則返回一個(gè)錯(cuò)誤頁(yè)面

- 服務(wù)器所創(chuàng)建的token只能使用一次

- token一般使用一個(gè)唯一的標(biāo)識(shí)

- 在jsp頁(yè)面,獲取uuid作為token

- UUID:32位字符串,通常作為對(duì)象或者表的唯一標(biāo)識(shí),根據(jù)機(jī)器碼和時(shí)間戳(從1970年1月1日開(kāi)始到現(xiàn)在)生成。

<%
 String uuid = UUID.randomUUID().toString();
 session.setAttribute("uuid", uuid);
%>
${errormsg }

  "/>
  user:
  password
  

- 在servlet頁(yè)面

String reqUUID = request.getParameter("uuid");
HttpSession session = request.getSession();
String sessUUID = (String) session.getAttribute("uuid");
session.removeAttribute("uuid");
  
if(reqUUID.equals(sessUUID)){
 response.sendRedirect(request.getContextPath()+"/login_success.jsp");
 System.out.println("已經(jīng)插入");
}else{
 request.setAttribute("errormsg", "重復(fù)登陸");
 request.getRequestDispatcher("/3.jsp").forward(request, response);
}

- 表單重復(fù)提交的危害:

- 向數(shù)據(jù)庫(kù)中插入大量的重復(fù)且沒(méi)有意義的數(shù)據(jù),占用服務(wù)器的資源

- 處理請(qǐng)求服務(wù)器并沒(méi)有檢查請(qǐng)求是否為重復(fù)的請(qǐng)求,導(dǎo)致惡意的攻擊

以上是“web開(kāi)發(fā)中如何解決表單重復(fù)提交的三種情況”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)成都網(wǎng)站制作公司行業(yè)資訊頻道!

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。


當(dāng)前標(biāo)題:web開(kāi)發(fā)中如何解決表單重復(fù)提交的三種情況-創(chuàng)新互聯(lián)
文章鏈接:http://m.jcarcd.cn/article/csspec.html
主站蜘蛛池模板: 欧美最猛黑| 国产一区二在线不卡 | 成人经典免费在 | 国产婷婷午夜在线 | 日韩精品a∨片蜜臀 | 日韩激情图片 | 91福利导航视频 | 精品国产欧| 97色精品 | 日韩午夜禽兽视频 | 绿巨人官网下载免费 | 午夜成人影院在线 | www.黄在线播放 | 国产a级网站免费看 | 国内精品一区二区 | 日韩亚洲制服另类 | 国产精品主播视频 | 日韩中文字码无砖 | 国产精品一区日本 | 中文字幕偷乱视频 | 不卡免费| 91免费视频播放 | 国产乱子伦露脸在线 | 欧美日韩综合一区二 | www.h视频| 日韩一区二区三 | 国产乱理论在线观看 | 日韩在线视频二 | 欧美一级影院 | 91福利日本 | 国精品午夜福 | 国产精品秘在线观看 | 欧美日韩动漫亚洲 | 欧美一级a欧美特黄 | 国产网站在线免费 | 欧美日韩亚洲 | 国产好看网站 | 奇米视频在线观看 | 国产系列视| 国产精品专区色 | 国产在线99 |