| POST | /todos |
|---|
#![allow(
dead_code,
non_camel_case_types,
non_snake_case,
clippy::upper_case_acronyms
)]
use serde::{Deserialize, Serialize};
use serde_json::Value;
use std::collections::HashMap;
#[derive(Serialize, Deserialize, Debug, Clone, PartialEq, Default)]
#[serde(default)]
pub struct Todo {
pub id: i64,
pub text: String,
#[serde(rename = "isFinished")]
pub is_finished: bool,
}
#[derive(Serialize, Deserialize, Debug, Clone, PartialEq, Default)]
#[serde(default)]
pub struct CreateTodo {
// Validate(Validator="NotEmpty")
pub text: String,
}
To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /todos HTTP/1.1
Host: blazor-gallery.servicestack.net
Accept: application/xml
Content-Type: application/xml
Content-Length: length
<CreateTodo xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/MyApp.ServiceModel">
<Text>String</Text>
</CreateTodo>
HTTP/1.1 200 OK Content-Type: application/xml Content-Length: length <Todo xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/MyApp.ServiceModel"> <Id>0</Id> <IsFinished>false</IsFinished> <Text>String</Text> </Todo>