Closed caecity43 closed 5 years ago
验证总是返回false,经过调试,发现 store_info = RuCaptcha.cache.read(rucaptcha_sesion_key_key) 中的store_info一直返回nil
store_info = RuCaptcha.cache.read(rucaptcha_sesion_key_key)
store_info
nil
redis_rails
RuCaptcha.cache.read
verify_rucaptcha?
verify_rucaptcha?(resource)
false
我的环境之前是 ruby2.4.4 和 rails 5.2.2.1,redis和web服务在同一台服务器上。
2.4.4
5.2.2.1
最近新开了一台服务器(旧服务器关停),并将ruby升级到2.6.3,rails升级到5.2.3,redis使用内网连接(已确定可正常连接),就出现了这个问题。
2.6.3
5.2.3
找到原因了,需要在 config/initializers/rucaptcha.rb 中指定完整的redis连接信息,在这之前我以为只要指定 cache_store 为 :redis_store,rucaptcha会自动使用 config.cache_store 的配置。
config/initializers/rucaptcha.rb
cache_store
:redis_store
config.cache_store
验证总是返回false,经过调试,发现
store_info = RuCaptcha.cache.read(rucaptcha_sesion_key_key)
中的store_info
一直返回nil
redis_rails
这个gem,把session存到redis,store_info
依然返回空。RuCaptcha.cache.read
方法也能正确读出hashverify_rucaptcha?
与verify_rucaptcha?(resource)
方式使用也都是返回false
我的环境之前是 ruby
2.4.4
和 rails5.2.2.1
,redis和web服务在同一台服务器上。最近新开了一台服务器(旧服务器关停),并将ruby升级到
2.6.3
,rails升级到5.2.3
,redis使用内网连接(已确定可正常连接),就出现了这个问题。