using System.Security.Claims; using NUnit.Framework; using JwtUtil = Bunny.Common.Utils.Jwt.JwtUtil; namespace Bunny.Test.Until.Jwt; [TestFixture] public class JwtTest { // 生层JWT [Test] public void JwtCreateTest() { var claims = new List(); var claim1 = new Claim("bunny", "小兔子"); claims.Add(claim1); var generateJwt = JwtUtil.GenerateJwt(claims); Console.WriteLine(generateJwt); } // 是否过期 [Test] public void IsJwtExpired() { var isJwtExpired = JwtUtil.IsJwtExpired(""); Console.WriteLine(isJwtExpired); } [Test] public void JwtParse() { var token = "eyJhbGciOiJub25lIiwidHlwIjoiSldUIn0.eyJidW5ueSI6IuWwj-WFlOWtkCIsImV4cCI6MTcxODAyODU5OH0.\n"; var jwtParse = JwtUtil.JwtParse(token); var jwtParseIssuer = JwtUtil.JwtParseIssuer(token); var jwtParseAudiences = JwtUtil.JwtParseAudiences(token); var jwtParseClaim = JwtUtil.JwtParseClaim(token); Console.WriteLine(jwtParse); Console.WriteLine(jwtParseIssuer); Console.WriteLine(jwtParseAudiences); Console.WriteLine(jwtParseClaim); foreach (var claim in jwtParseClaim) { Console.WriteLine($"Type:{claim.Type}"); Console.WriteLine($"Value:{claim.Value}"); } } [Test] public void JwtParseClaim() { var token = "eyJhbGciOiJub25lIiwidHlwIjoiSldUIn0.eyJidW5ueSI6IuWwj-WFlOWtkCIsImV4cCI6MTcxODAyODU5OH0.\n"; var jwtParseClaim = JwtUtil.JwtParseClaim(token); var enumerable = jwtParseClaim.Select(s => s.Type); var join = string.Join(" ", enumerable); Console.WriteLine(join); } }