| Crates.io | actix-web-lab |
| lib.rs | actix-web-lab |
| version | 0.24.3 |
| created_at | 2022-01-03 14:22:12.835963+00 |
| updated_at | 2025-08-20 12:40:47.60055+00 |
| description | In-progress extractors and middleware for Actix Web |
| homepage | |
| repository | https://github.com/robjtede/actix-web-lab |
| max_upload_size | |
| id | 507142 |
| size | 485,846 |
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)ConditionOption: conditional middleware helper (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.