dustlight-cn / captcha

CAPTCHA 是一个基于 Spring Boot 框架的验证码框架,它通过 AOP 的方式完成包含验证码生成、发送、存储等验证码相关业务,以避免与业务代码耦合。目前提供邮箱验证码、短信验证码、图像验证码、谷歌 reCAPTCHA。
https://dustlight-cn.github.io/captcha/
Apache License 2.0
30 stars 6 forks source link

redis存储问题 #9

Closed yangxiuyi001 closed 2 years ago

yangxiuyi001 commented 2 years ago

请问用分布式系统用redis存code,在存key的时候怎么制定Code的name属性的值

Hansin1997 commented 2 years ago

你好,请问你说的存 key 的时候,是指的发送验证码的时候吗?

如果是的话,在 @SendCode 上添加 value 属性即可指定 code 的 名称:

@SendCode(store = @Store("redisCodeStore"), value = "myCodeName")

指定 myCodeName 之后,记得在消费(验证)时也同样指定对应的名称:

@VerifyCode(store = @Store("redisCodeStore"), value= "myCodeName")

另外,框架在进行 Redis 存储与获取时,会加上一些前缀,默认前缀是:CAPTCHA_CODE

如果需要自定义前缀,可以在配置文件 application.yaml 中配置:

dustlight:
  captcha:
    store:
      redis:
        key-prefix: "CAPTCHA_CODE" # 自定义前缀

如果配置文件是 application.properties 依然同理。