前後端分離 用戶名密碼加密

自己寫了個簡單的用戶名密碼加密功能,僅供參考。環境springboot     vue

流程就是先獲取一個隨機口令,然後將用戶名和密碼拼在口令的後面,後臺再提取出來

1.登錄前獲取隨機口令

@RequestMapping(value = "/uuu", method = {RequestMethod.GET})
public ReturnBean uuu() {
    String uid = UUID.randomUUID().toString();
    session.setAttribute("uid",uid);
    return ReturnBean.success(uid);
}

2.前端將用戶名和密碼拼在口令的後面

Login({
  col1: this.uuu+this.userName,
  col2: this.uuu+this.password
}).then((res) => {
  //處理返回信息
})

3.後端解析傳過來的用戶名和密碼

private User getUser( String col1,String col2){
    if(session.getAttribute("uid")==null){
        throw new Exception("認證失敗");
    }

    if(StringUtils.isBlank(col1)||StringUtils.isBlank(col2)){
        throw new Exception("認證失敗");
    }

    String uid = session.getAttribute("uid").toString();
    if((!col1.startsWith(uid))||(!col2.startsWith(uid))){
        throw new Exception("認證失敗");
    }

    String userName = col1.replace(uid,"");
    String pw = col2.replace(uid,"");

    User user = new User();
    user.setUserName(userName);
    user.setPassword(pw);
    return user;
}
發佈了49 篇原創文章 · 獲贊 12 · 訪問量 1萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章