我正在尝试验证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");
}
}
我可以传递任何字符串,但是当我传递令牌时会失败。我可能没有正确执行此操作,
答案 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");
}
}