New : unit provides read-to-use server hosting app for Linux/Windows.New : THttpEngine.CreateEngineFunc provides a way for client applications to use their own HTTP client engine.Sometimes Android app was crashing or displaying a blank error message when the request failed. Fixed : Better error handling when performing HTTP requests using THttpClient on Android.Fixed : Forward middleware was showing up in the form as a non-visual component at design-time.Fixed : Memory leak when performing HTTP request using THttpClient in Android devices (introduced with the end of ARC in Sydney 10.4).Fixed : THttpServerContext.Data and Item properties not working in Indy-based servers.New : TJwtMiddleware.OnForbidRequest allows configuring which requests will be rejected or approved based on the existing JWT data.New : TJwtMiddleware.OnGetSecretEx event allows providing the JWT secret dynamically based on the JWT token content itself.New : TTenantMiddleware retrieves a tenant id from several input formats (header, query URL) and set the tenant id in the HTTP context.Fixed : JWT middleware raising error 500 (instead of 400) for internal errors.Fixed : TStaticModule/TSparkleStaticServer folder redirect was not working correctly when the URL had query or fragment parameters. Improved : TSparkleUtils.GetQueryParams return type changed from TArray > to TArray.You can now use RSA and ECDSA signing algorithms for both singing new JWT and also verify existing JWT signatures. New : JWT (JOSE) for Delphi units updated.New : TSparkleJwtMiddleware improved with new following properties: AllowedClockSkew, RequireExpiration?Time, RequireIssuedAt, RequireNotBefore, ExpectedAudiences and ExpectedIssuers.New : TSparkleLogging?Middleware.?Error?Response?Options property.If you use a secret that is smaller than the minimum size, you should set JWT Middleware property TSparkleJwtMiddleware.?Skip?KeyValidation to True. Improved : BREAKING CHANGE JWT is now requiring secret with a minimum size.New : TTenantMiddleware.DomainMap property now allows choosing the tenant based on the requested domain in URL.Improved : Design-time components were greyed out in component palette if current platform was different than Win32.Fixed : HTTP client not correctly processing compressed responses (only relevant when accessing the in-process server).Fixed : Middleware logging format string was wrongly parsed when a macro with parameter was close to another without any spaces (for example, :req:req.Improved : Compress middleware does not compress if cache-control HTTP header is no-transform, or if content-range header is present.Improved : Compress middleware now adds Vary header to the response for better caching of compressed and uncompressed responses.Improved : Compress middleware now only compress response if the content is effectively compressible (text content type, javascript, JSON or XML).Improved : TSparkleJwtMiddleware.BeforeValidation event allows adding custom JWT validation rules.Fixed : JWT middleware was sending response body on authorization errors even for HEAD requests.Fixed : Static module not properly responding index files (index.html) when RootDir property had a relative folder.Improved : Support for ARM64 macOS and ARM64 iOS Simulator platforms.New : THttpRequest.ContentStream allows sending body via stream.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |