代码之家  ›  专栏  ›  技术社区  ›  vigamage

我是否应该显式发送刷新令牌以获取新的访问令牌-JWT

  •  18
  • vigamage  · 技术社区  · 9 年前

    我使用了下面文章中描述的实现

    http://www.svlada.com/jwt-token-authentication-with-spring-boot/

    假设我在登录10分钟后调用对服务器的请求。由于访问令牌已过期,我收到401错误响应。

    或者,当我的请求由于访问令牌过期而被服务器拒绝时,刷新令牌本身是否应该自动向服务器发送请求以获取新的访问令牌?

    1 回复  |  直到 9 年前
        1
  •  16
  •   jps Virgilio Cossa    9 年前

    是的,刷新令牌用于获取新的访问令牌。

    当您第一次请求访问令牌时,通常从向令牌端点发送令牌请求开始,在所谓的情况下 Resource Owner Password Credentials Grant

    grant_type=password&username=user1&passowrd=very_secret
    

    当访问令牌过期时,您必须请求一个新的访问令牌。这一次,使用仍然有效的刷新令牌,您不再需要用户凭据,而是发送

    grant_type=refresh_token&refresh_token=<your refresh token>
    

    这样,您就不需要在客户端存储用户凭据,也不需要再次用登录过程来打扰用户。

    此外,您还可以阅读本文以了解有关该主题的更多信息: https://auth0.com/learn/refresh-tokens/

    在以下教程中,还提供了如何在postman中使用刷新令牌的屏幕截图: http://bitoftech.net/2014/07/16/enable-oauth-refresh-tokens-angularjs-app-using-asp-net-web-api-2-owin/ 一般来说,我可以推荐阅读泰瑟·朱德的教程,尤其是C#,ASP。NET和角度程序员。