什么是实现基于令牌的身份验证的最佳方法

时间:2019-10-07 12:50:45

标签: java spring-boot web-services authentication token

我有一个Spring Boot应用程序,它充当服务器的客户端。身份验证后,它从服务器请求数据。服务器使用基于令牌的身份验证,每15分钟更改一次令牌。什么是我的客户端应用程序获取新令牌的最有效,最清洁的方式?默认情况下,我使用多线程,并且在主应用程序的后台,我每15分钟请求一次新令牌,但这并不高效。那么是否有其他方法(例如反应式编程等)来做到这一点? 请注意,我的应用程序需要一次向服务器发送大量请求,因此我每次发送请求时都无法检查获取令牌的时间。

1 个答案:

答案 0 :(得分:1)

我将if #available(iOS 13.0, *) { searchController.searchBar.searchTextField.attributedPlaceholder = NSAttributedString(string: "My PlaceHolder", attributes: [NSAttributedString.Key.foregroundColor: UIColor.white.withAlphaComponent(0.80)]) } @RetryableRetryOperationsInterceptor一起使用。

这是怎么回事:

我们有一个ExceptionClassifierRetryPolicy单身人士持有身份验证令牌:

@Component

使实际上从服务器请求数据的@Component public class AuthenticationHolder { private String token; public String getToken() { return token; } public void setToken(String token) { this.token = token; } } 不知道身份验证过程。它仅引用您的@Component单例,并在该方法中尝试请求数据(显然用AuthenticationHolder注释,它检索令牌并发出请求。如果失败并返回错误的响应代码,从服务器,使其抛出异常,然后重试。在两次重试之间,使您的@Retryable更新身份验证令牌。