相关疑难解决方法(0)

c#asp.net核心承载错误=“ invalid_token”

有人可以帮我解决这个问题吗?我正在使用Postman测试API

我正在关注有关asp.net核心的教程。

我现在在认证部分。

我不太了解发生错误的原因。

在本教程中,它具有登录名并返回令牌。

这是登录代码。哪个在工作。我知道这是有效的,因为它返回令牌。我也尝试使用无效的登录名。401 Unauthorized当我使用数据库中找到的正确登录凭据时,它将返回但是。它返回令牌

[HttpPost("login")]
public async Task<IActionResult> Login(UserForLoginDto userForLoginDto)
    {
        var userFromRepo = await _repo.Login(userForLoginDto.Username.ToLower(), userForLoginDto.Password);

        if (userFromRepo == null)
            return Unauthorized();

        var claims = new[]
        {
            new Claim(ClaimTypes.NameIdentifier, userFromRepo.Id.ToString()),
            new Claim(ClaimTypes.Name, userFromRepo.Username)
        };

        var key = new SymmetricSecurityKey(Encoding.UTF8.GetBytes(_config.GetSection("AppSettings:Token").Value));

        var creds = new SigningCredentials(key, SecurityAlgorithms.HmacSha256Signature);

        var tokenDescriptor = new SecurityTokenDescriptor
        {
            Subject = new ClaimsIdentity(claims),
            Expires = DateTime.Now.AddDays(1),
            SigningCredentials = creds
        };

        var tokenHandler = new JwtSecurityTokenHandler();

        var token = tokenHandler.CreateToken(tokenDescriptor);

        return Ok(new { …
Run Code Online (Sandbox Code Playgroud)

c# postman asp.net-core

7
推荐指数
3
解决办法
3870
查看次数

标签 统计

asp.net-core ×1

c# ×1

postman ×1