情况是这样的:
Redis存在多级目录。
网页的Session存储在 springSessions: 下。
而手机端Session在 springSessions:app 下。
正确的:
public void deleteToken(String tokenId){ Set<String> keys = apiTokenTemplate.keys("springSessions:*"+tokenId);
if(keys!=null) apiTokenTemplate.delete(keys); }
错误的:
public void deleteToken(String tokenId){ if (apiTokenTemplate.hasKey("springSessions:*"+tokenId)) { apiTokenTemplate.delete("springSessions:*"+tokenId); } }