國(guó)際驗(yàn)證碼接口:圖片驗(yàn)證碼的需求分析、優(yōu)雅實(shí)現(xiàn)
2020-11-05 00:00:00
來(lái)源:http://www.yzdtdq.net.cn/
點(diǎn)擊:3518
喜歡:0
國(guó)際驗(yàn)證碼接口:圖片驗(yàn)證碼的需求分析、優(yōu)雅實(shí)現(xiàn) 需求描述:通常我們最登錄的時(shí)候,為了防止多次嘗試或攻擊登錄接口,我們需要弄一個(gè)驗(yàn)證碼的功能,只有輸入驗(yàn)證碼正確的情況下,我們才會(huì)去做密碼校驗(yàn),這樣就減少了密碼可能會(huì)被試出來(lái)的可能。

需求分析 這個(gè)功能設(shè)計(jì)要點(diǎn)有兩個(gè): 第一點(diǎn)、驗(yàn)證碼圖片的生成 第二點(diǎn)、驗(yàn)證碼的存儲(chǔ)方式 如果只是一個(gè)單體項(xiàng)目,可以存在session當(dāng)中,如果集成了shiro,也可以放shiro的session中。 而在分布式系統(tǒng)當(dāng)中,需要考慮驗(yàn)證碼的共享功能。 1、可以存儲(chǔ)在session中,如需要集成spring session,把session存到redis等存儲(chǔ)中間件中session驗(yàn)證碼共享功能。 2、shiro集成了redis的,就可以存在shiro session當(dāng)中實(shí)現(xiàn)共享。 3、當(dāng)然,你也可以直接把驗(yàn)證碼存到redis等中間件中,不需要通過(guò)session,但是key就必須唯一。 偽代碼邏輯 2、生成驗(yàn)證碼的配置信息,配置樣式等 3、調(diào)用producer接口生成驗(yàn)證碼和圖片,并保存到session中 4、使用servlet輸出流把驗(yàn)證碼圖片 5、傳到客戶端校驗(yàn)驗(yàn)證碼 **建議:**可以定義一個(gè)驗(yàn)證碼開(kāi)關(guān),開(kāi)發(fā)時(shí)候可以關(guān)閉驗(yàn)證碼功能,提高效率。 代碼實(shí)現(xiàn) 第一步、導(dǎo)入驗(yàn)證碼組件pom包 第二步、生成驗(yàn)證碼配置
上一篇:雙十一營(yíng)銷短信群發(fā)需要注意的要點(diǎn)
下一篇:雙十一短信群發(fā)營(yíng)銷短信模板舉例