Crates.io | actix-web-lab |
lib.rs | actix-web-lab |
version | 0.23.0 |
source | src |
created_at | 2022-01-03 14:22:12.835963 |
updated_at | 2024-10-15 08:04:33.37791 |
description | In-progress extractors and middleware for Actix Web |
homepage | |
repository | https://github.com/robjtede/actix-web-lab |
max_upload_size | |
id | 507142 |
size | 458,794 |
Experimental extractors, middleware, and other extras for possible inclusion in Actix Web.
Csv
: efficient CSV streaming (docs)NdJson
: efficient NDJSON streaming (docs)DisplayStream
: efficient line-by-line Display
streaming (docs)Html
: (graduated 🎉) basic string wrapper that responds with HTML Content-Type (docs)Cbor
: basic CBOR format wrapper with appropriate Content-Type (docs)MessagePack
: basic MessagePack format wrapper with appropriate Content-Type (docs)Sse
: semantic server-sent events (SSE) responder with a channel-like interface (docs)from_fn
: (graduated 🎉) use an async function as a middleware (docs)map_response
: use an async function to modify the response (docs)map_response_body
: use an async function to modify the response body (docs)RedirectHttps
: middleware to redirect traffic to HTTPS if connection is insecure with optional HSTS (docs)redirect_to_www
: function middleware to redirect traffic to www.
if not already there (docs)redirect_to_non_www
: function middleware to redirect traffic to www.
if not already there (docs)ErrorHandlers
: alternative error handler middleware with simpler interface (docs)NormalizePath
: alternative path normalizing middleware with redirect option (docs)CatchPanic
: catch panics in wrapped handlers and middleware, returning empty 500 responses (docs)PanicReporter
: catch panics in wrapped handlers and middleware, returning empty 500 responses (docs)LoadShed
: sheds load when the inner service isn't ready (docs)LazyData
: app data/state initialized on first use (docs)SwapData
: app data/state that can be replaced at runtime (alternative to Data<RwLock<T>>
) (docs)LocalData
: app data/state that uses an Rc
internally, avoiding atomic overhead (alternative to Data<RwLock<T>>
) (docs)ThinData
: (graduated 🎉) app data/state for cheaply-cloned types (docs)Json
: simplified JSON extractor with const-generic payload limits (docs)Path
: simplified path parameter extractor that supports destructuring (docs)Query
: simplified query-string extractor that can also collect multi-value items (docs)RequestSignature
: wraps an extractor and calculates a request signature alongside (docs)BodyLimit
: wraps a body extractor and prevents DoS attacks by limiting payload size (docs)Bytes
: simplified Bytes extractor with const-generic limits (docs)UrlEncodedForm
: URL-encoded form extractor with const-generic payload size limit (docs)Host
: Host information taken from either URL or Host header (docs)FromRequest
: Derive macro to implement FromRequest
on an aggregate struct of other extractors (docs)CacheControl
: Cache-Control typed header with support for modern directives (docs)ClearSiteData
: Clear-Site-Data typed header (docs)ContentLength
: Content-Length typed header (docs)Forwarded
: Proxy and original client info (docs)StrictTransportSecurity
: Strict-Transport-Security (HSTS) configuration (docs)channel
: a simple channel-like body type with a sender side that can be used from another thread (docs)writer
: a simple AsyncWrite
body type (docs)Redirect
: (graduated 🎉) simple redirects (docs)spa
: Easy Single-page Application (SPA) service (docs)Acceptable
: (graduated 🎉) verifies that an Accept
header is present and it contains a compatible MIME type (docs)test_request
: construct TestRequest
using an HTTP-like DSL (docs)assert_response_matches
: quickly write tests that check various parts of a ServiceResponse
(docs)fork_request_payload
: effectively clone a request payload (docs)_lab
suffix from imports.