Expand description
§rustapi-extras
Optional security and utility features for the RustAPI framework.
This crate provides production-ready middleware and utilities that are opt-in via Cargo feature flags to minimize binary size when not needed.
§Features
jwt- JWT authentication middleware andAuthUser<T>extractorcors- CORS middleware with builder pattern configurationrate-limit- IP-based rate limiting middlewarecsrf- CSRF protection using Double-Submit Cookie patternconfig- Configuration management with.envfile supportcookies- Cookie parsing extractorsqlx- SQLx database error conversion to ApiErrorinsight- Traffic insight middleware for analytics and debuggingextras- Meta feature enabling jwt, cors, and rate-limitfull- All features enabled
§CSRF Protection Example
ⓘ
use rustapi_core::RustApi;
use rustapi_extras::csrf::{CsrfConfig, CsrfLayer, CsrfToken};
let config = CsrfConfig::new()
.cookie_name("csrf_token")
.header_name("X-CSRF-Token");
let app = RustApi::new()
.layer(CsrfLayer::new(config));§Example
[dependencies]
rustapi-extras = { version = "0.1.275", features = ["jwt", "cors", "csrf"] }