binarywang/weixin-java-mp-demo

redis配置如何设置密码和存储的token的key值

DreamPWJ opened this issue · 14 comments

没有看到示例有密码配置 同时最早之前已经实现http请求获取token存入redis, 现在引入wxjava导致token重复获取问题,想统一存放到redis指定的key值内

其实就是构造JedisPool对象,自己加入相关配置即可

@binarywang 关键是没有设置redis的key值吧

因为已经有redis存入了自定义的key值了 如果两个key不一样 就无法判断token是否存在和失效 导致请求两次 旧token 5分钟后过期

或者咱们公众号redis 存储token key值是固定的也行, 我把项目之前自定义存储的key改成咱们的也行 。 公众号缓存key值是啥?

@binarywang 帮忙解决一下, 这个问题已经严重影响线上用户了,token失效,我设置了redis了,没有效果,没有存储到redis, mp:
useRedis: true
redisConfig:
host: ${project.outer-ip}
port: 6379
password: ENC(krv/n8dnQSnTyljD9/nHl9L/qEjk+dyF)

其实你看源码很容易就知道key值了,对应类是这个WxMpRedisConfigImpl ,自己阅读下就明白了

或者咱们公众号redis 存储token key值是固定的也行, 我把项目之前自定义存储的key改成咱们的也行 。 公众号缓存key值是啥?

@binarywang 现在关键是开启redis 并没有去存储啊 是因为密码不用填吗?

完全没明白你的意思。建议调试下,跟踪下源码

@binarywang 就是设置了redis存储方式 但是没有生效 redis里从来没有出现过key ,3.7版本

不知道你代码怎么写的,就如我之前说的,你调试下代码,跟踪源码看看到底是哪里写的有问题。

这个和代码没关系吧 redis存储不应该是wxjava完成的吗?

useRedis: true
redisConfig:
host: ${project.outer-ip}
port: 6379
password: ENC(krv/n8dnQSnTyljD9/nHl9L/qEjk+dyF)

实例和源码里均没有出现password,你是自己想当然加的吧,确定看过 RedisConfig 源码了?

才明白你到底在纠结什么,一直说让你看源码,你却不想看。
本demo目前只是简单演示了如何支持redis,更复杂的配置其实是需要你自己改造才能支持的。
就如我最开始答复你的,自己构造JedisPool对象,你去看对应类有什么构造方法,自己去构造就行了。