/// <summary> /// Writes a JWT in its compact serialization format. /// </summary> /// <param name="descriptor">The descriptor of the JWT.</param> /// <param name="output">The <see cref="IBufferWriter{T}"/> used for writing the output.</param> /// <returns>The array of <see cref="byte"/> representation of the JWT.</returns> public void WriteToken(JwtDescriptor descriptor, IBufferWriter <byte> output) { if (descriptor is null) { ThrowHelper.ThrowArgumentNullException(ExceptionArgument.descriptor); } if (!IgnoreTokenValidation) { descriptor.Validate(); } var encodingContext = new EncodingContext(EnableHeaderCaching ? _headerCache : null, TokenLifetimeInSeconds, GenerateIssuedTime); descriptor.Encode(encodingContext, output); }