public static JsonWebToken Create(string audience, string issuer, string userId, DateTime expirationTime, string secret) { var jwt = new JsonWebToken(); jwt.Header = new JwtHeader { Algorithm = "HS256", Type = "JWT" }; jwt.Payload = new JwtPayload { Audience = audience, Issuer = issuer, UserId = userId, ExpirationTime = expirationTime }; jwt.Signature = CalculateSignature(jwt.Header, jwt.Payload, secret); return jwt; }
public static string TokenToString(JsonWebToken token) { var header = JsonToBase64Url(token.Header); var payload = JsonToBase64Url(token.Payload); return $"{header}.{payload}.{token.Signature}"; }