尝试验证jwt令牌终结点.net core 2.1

时间:2018-09-21 14:54:25

标签: c# .net-core

我正在尝试验证jwt令牌,因此我将其发送到请求的标头中,但是在传递令牌时出现400错误。

 [HttpPost("validateToken/{token}")]
        public IActionResult ValidateToken ([FromRoute] string token)
        {
            var jwthandler = new JwtSecurityTokenHandler();
            var jwttoken = jwthandler.ReadJwtToken(token);
            var expDate = jwttoken.ValidTo;
            if (expDate < DateTime.UtcNow.AddMinutes(3))
            {
                return Ok("invalid");

            }
            else
            {
                return Ok("valid");
            }
        }

我可以传递任何字符串,但是当我传递令牌时会失败。我可能没有正确执行此操作,

1 个答案:

答案 0 :(得分:1)

将您的代码更改为此,并将令牌作为字符串传递给正文,并且您的逻辑应该起作用

 [HttpPost("validateToken")]
        public string ValidateToken ([FromBody] string token)
        {
            var jwthandler = new JwtSecurityTokenHandler();
            var jwttoken = jwthandler.ReadJwtToken(token);
            var expDate = jwttoken.ValidTo;
            if (expDate < DateTime.UtcNow.AddMinutes(3))
            {
                return ("invalid");

            }
            else
            {
                return("valid");
            }
        }