Skip to main content

Module http

Module http 

Source
Expand description

Zero-axum public HTTP types.

User code says arcly_http::Response, arcly_http::Json, etc. — no axum::… paths in the public surface. Internally these are thin delegations to axum, so we keep its battle-tested implementation without welding it into the public API.

Why a private axum::response::Response re-export rather than a full newtype: pinning axum::response::Response is the one type the framework’s boundary code constructs; making it a newtype would force every adapter / interceptor to unwrap repeatedly with zero behavioural benefit. A pub use rename achieves the same “no axum in user paths” outcome at zero runtime cost.

Structs§

Json
JSON response wrapper. Json(body) writes Content-Type: application/json and serialises body with serde_json. Same surface as axum’s Json so the route macro’s return-type walker (Json<T> | Result<Json<T>, _>) keeps working without changes.

Traits§

IntoResponse
Convert a value into a Response.

Type Aliases§

Response
The framework’s response type. Same memory shape as axum’s; the alias keeps the user-visible path arcly_http::Response. Type alias for http::Response whose body type defaults to Body, the most common body type used with axum.