【问题标题】:what is the best way to implement access token in play framework在游戏框架中实现访问令牌的最佳方法是什么
【发布时间】:2017-06-12 16:48:30
【问题描述】:

我正在开发一个使用 play framework 2.5 为开发者提供 API 服务的项目。

我现在想用播放框架实现访问令牌,以控制服务器 API 的访问。

我已经实现了应用密钥和应用密钥。谁能建议如何生成访问令牌?

【问题讨论】:

    标签: playframework playframework-2.2 playframework-2.1 playframework-2.3 playframework-2.5


    【解决方案1】:

    使用 JavaWebTokens(jwt),它将始终为您提供唯一的密钥,

    public String getJWT(){
         Date now = new Date();
         long t = now.getTime();
         Date expirationTime = new Date(t + 1300819380);    
    
         return Jwts.builder()
              .setSubject("any subject")
              .setIssuedAt(now)
              .setExpiration(expirationTime)
              .signWith(SignatureAlgorithm.HS512, "username")
              .compact();
    }
    <--! to validate jwt -->
    public boolean validateJWT(String jwt){
        try {
            Jwts.parser().setSigningKey("username").parseClaimsJws(jwt);
            return true;
        } catch (Exception e) {
            // TODO: handle exception
            return false;
    
        }
    
    }
    

    【讨论】:

    • 客户端如何使用生成的token与云端通信?客户端是否需要调用一个api获取token,然后使用token调用其他api?
    • 将token存储在浏览器本地,每次调用时将其添加到http头中,每当您调用API时,验证token是否有效并进一步处理请求
    • 谢谢,当令牌过期时,是否需要刷新令牌才能请求新令牌?
    • 到期用户应再次登录,登录时应生成并存储此令牌
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-02-25
    • 1970-01-01
    • 2018-08-14
    相关资源
    最近更新 更多