前后端配合实现密码找回功能思路
?
-前后端配合實現(xiàn)密碼找回功能
前端-郵箱驗證
用戶進入忘記密碼頁面(localhost:8080/#/FindPwd),將用戶名和圖形驗證碼填入。前端對用戶名進行后端校驗(調(diào)用后端的api判斷該用戶名是否存在),如果用戶不存在,給出相關(guān)提示;如果用戶存在,然后調(diào)用發(fā)送郵件的后端api(攜帶用戶名信息)
?
后端-發(fā)送郵件
?
后端接收到前端發(fā)送郵件的請求后,通過用戶名從數(shù)據(jù)庫查找對應(yīng)的郵箱,發(fā)送郵件(郵件的形式是一些介紹說明和一個前端鏈接,該鏈接的形式為
localhost:8080/#/ResetPwd?token=yP1K8viNMKhv2HfDIPpS8exF21pPdVt8y9LP8AklXv78jPMImA4V7dJ5EMw1vJM7LcZ7BfDpXE1GHhdMga3r0A==)
其中localhost:8080為前端的ip和端口,后端可以從http請求頭中的Origin中獲取,這里用localhost:8080作為示例。而token中攜帶了加密信息(其中可以包含用戶信息,用來作為重置密碼頁面的提示內(nèi)容;其中必須包含用戶id,失效時間等關(guān)鍵信息)。
?
發(fā)送郵件后,給前端響應(yīng),通知前端郵件是否發(fā)送成功。前端拿到這個結(jié)果,相應(yīng)地給用戶提示(如:“郵件發(fā)送成功,請前往郵箱查收”)
?
?
前端-解密鏈接
用戶點擊鏈接打開頁面,前端對鏈接中的token查詢字符串進行解密,調(diào)用后端解密的api,傳入token值,解密可以得到用戶id,失效時間等信息。前端獲取到失效時間后,與當(dāng)前時間做對比,如果已經(jīng)過期,則提示用戶;如果未過期,則展示重置密碼頁面。用戶需要填入新密碼,點擊確認(rèn),進行密碼重置。此時前端攜帶用戶id和加密過的新密碼發(fā)送重置密碼的請求給后端api,后端返回成功后,前端提示用戶修改成功。
?
轉(zhuǎn)載于:https://blog.51cto.com/14150615/2356945
新人創(chuàng)作打卡挑戰(zhàn)賽發(fā)博客就能抽獎!定制產(chǎn)品紅包拿不停!總結(jié)
以上是生活随笔為你收集整理的前后端配合实现密码找回功能思路的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: springmvc框架原理分析
- 下一篇: 2019年,ALEXA将会走向何方?