1. 程式人生 > >表單重復提交

表單重復提交

dom 是否有效 表單重復提交 true 原理 info equals 分享圖片 width

原理:1、後端生成一個授權碼,存好。並且把授權碼傳到前端。
    2、前端把授權碼傳到後端,授權碼一致,刪除後端存好的授權碼。

工具類:

public class TokenUtil {
    /**
     * 制造隨機數
     * @return
     */
    public static String createToken(){
        String token = UUID.randomUUID().toString();
        return token;
    }

    /**
     * 設置隨機數
     * 放入前端和後端session
     
*/ public static void setToken(HttpServletRequest request, String profix){ String token = createToken(); String key = profix + "Token"; //放入前端 request.setAttribute(key,token); //放入session String sessionKey = profix.toUpperCase() + "_TOKEN_IN_SESSION"; request.getSession().setAttribute(sessionKey,token); }
/** * 驗證隨機數是否有效 * @return */ public static boolean checkToken(HttpServletRequest request, String profix, String token){ //判斷前綴是否為空 if(profix==null){ return false; } //判斷session中的隨機數是否有效 String sessionKey = profix.toUpperCase() + "_TOKEN_IN_SESSION
"; String sessionToken = (String) request.getSession().getAttribute(sessionKey); if(sessionKey==null){ return false; } if(sessionToken.equals(token)){ return true; } return false; } /** * 刪除session中的隨機數 */ public static void removeAttribute(HttpServletRequest request, String profix){ String sessionKey = profix.toUpperCase() + "_TOKEN_IN_SESSION"; request.getSession().removeAttribute(sessionKey); } }

技術分享圖片

技術分享圖片

技術分享圖片

技術分享圖片

以上幾乎就是表單重復提交的過程和大部分代碼
,有什麽不對的,請大家指正。我是個新手!

表單重復提交