最簡單的登錄?我做的用戶登錄支持2種登錄方式用戶名、密碼,今天小編就來聊一聊關于最簡單的登錄?接下來我們就一起去研究一下吧!
我做的用戶登錄支持2種登錄方式
用戶名、密碼
手機号、驗證碼
比如手機号 驗證碼方式,我使用到了redis、RabbitMq、阿裡大魚、jwt來實現這個功能
主要流程是:
1、用戶輸入手機号、我會判斷手機号是否注冊以及狀态是否正常
2、正常,則發送驗證碼,在發送的時候我使用到了RabbitMq,在這裡做了異步處理,加快相應效率
3、在Rabbitmq我使用的交換器是點對點模式,消息通過路由鍵發送到指定的隊列
4、在另一個第三方為服務中,我會創建一個監聽,用來監聽這個隊列
5、如果監聽 監聽到了消息的産生,則指定監聽對應的方法,消息裡面包含需要發送驗證碼的手機号、當然如果想要發送一個對象,還需要一個額外的配置,讓RaabitMq來支持發送json對象,因為默認隻支持byte數組或者基本類型。
6、在監聽方法裡,調用阿裡大魚發送短信
7、往redis中存入驗證碼,我使用的是string類型,key為手機号,value為驗證碼,并且給這個key設置了一個過期時間
8、我在根據用戶輸入的手機号和驗證碼進行判斷
9、首先我會再次判斷手機号狀态是否正常
10、再從redis中根據手機号來獲取驗證碼,如果驗證碼不存在,提示“過期,從新獲取”
11、如果存在,則判斷用戶輸入的驗證碼與redis中的驗證碼是否一緻,不一緻,則提示”驗證碼錯誤"
12、如果一緻,返回用戶信息以及生産對應的jwt token
,更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!