Trait salvo_oapi::ToRequestBody
source · pub trait ToRequestBody {
// Required method
fn to_request_body(components: &mut Components) -> RequestBody;
}
Expand description
This trait is implemented to document a type (like an enum) which can represent request body, to be used in operation.
§Examples
use std::collections::BTreeMap;
use serde::Deserialize;
use salvo_oapi::{ToRequestBody, ToSchema, Components, Content, EndpointArgRegister, Operation, RequestBody };
#[derive(ToSchema, Deserialize, Debug)]
struct MyPayload {
name: String,
}
impl ToRequestBody for MyPayload {
fn to_request_body(components: &mut Components) -> RequestBody {
RequestBody::new()
.add_content("application/json", Content::new(MyPayload::to_schema(components)))
}
}
impl EndpointArgRegister for MyPayload {
fn register(components: &mut Components, operation: &mut Operation, _arg: &str) {
operation.request_body = Some(Self::to_request_body(components));
}
}
Required Methods§
sourcefn to_request_body(components: &mut Components) -> RequestBody
fn to_request_body(components: &mut Components) -> RequestBody
Returns RequestBody
.
Object Safety§
This trait is not object safe.