#[derive(HttpRequest)]
{
// Attributes available to this derive:
#[http_request]
}
Expand description
HttpRequest can be derived by structs that needs to implement the HttpRequest trait.
It generates the request types (e.g. Response, Body or Query) and the getter functions
§Examples:
§GET Endpoint with dynamic path
#[derive(HttpRequest)]
#[http_request(
method = "GET",
response = GetItemResponse,
path = "/v1/item/{0}"
)]
pub struct GetItemRequest(pub usize);
§GET Endpoint with query parameters
#[derive(HttpRequest)]
#[http_request(
method = "GET",
response = String,
path = "/v1/items"
)]
pub struct GetItemsWithQueryRequest {
#[http_request(query)]
pub query: PostEventInviteQuery,
}§POST Endpoint with multiple attributes
#[derive(HttpRequest)]
#[http_request(
method = "POST",
response = SampleResponse,
path = "/v1/item/{id}"
)]
pub struct SampleRequest {
pub id: usize,
#[http_request(query)]
pub query: SampleQuery,
#[http_request(body)]
pub body: SampleBody,
#[http_request(header)]
pub header: http::HeaderMap,
}HttpRequest derive macro