首页 > 解决方案 > 每天在服务内生成一个令牌

问题描述

我必须创建一个端点,它收集信息然后插入到 BBDD。问题是要访问此信息,令牌必须始终添加到查询参数中,并且每 20 小时过期一次。

要获得令牌,首先我必须像这样调用它

https://url/token.php?username=...&password=...

我会收到这样的回复

{"success":true,"token":"aaaa","expire":1589780649}

收集信息的端点的一个例子是

https://url/information.php?token=aaaa&fields=a,b

我不得不说我是java spring(以及一般java)的新手。有没有办法创建一个微服务,在收集信息之前,每 20 小时获取一次令牌?

标签: javaspringspring-boottoken

解决方案


如果您将令牌保存在数据库中,那么您可以在任何请求后检查令牌到期

例如:

if (token.getExpire > 20 hours) { 
    Token token = tokenRepository.findByToken(token);
    if (token != null) {
        generateNewToken();
        remove and save new token or change old token in DB
    }
}

推荐阅读