Coverage for docs_src / json_base64_bytes / tutorial001_py310.py: 100%
26 statements
« prev ^ index » next coverage.py v7.13.3, created at 2026-04-06 01:24 +0000
« prev ^ index » next coverage.py v7.13.3, created at 2026-04-06 01:24 +0000
1from fastapi import FastAPI 1abfgcde
2from pydantic import BaseModel 1abfgcde
5class DataInput(BaseModel): 1abfgcde
6 description: str 1abcde
7 data: bytes 1abcde
9 model_config = {"val_json_bytes": "base64"} 1abfgcde
12class DataOutput(BaseModel): 1abfgcde
13 description: str 1abcde
14 data: bytes 1abcde
16 model_config = {"ser_json_bytes": "base64"} 1abfgcde
19class DataInputOutput(BaseModel): 1abfgcde
20 description: str 1abcde
21 data: bytes 1abcde
23 model_config = { 1abfgcde
24 "val_json_bytes": "base64",
25 "ser_json_bytes": "base64",
26 }
29app = FastAPI() 1abfgcde
32@app.post("/data") 1abfgcde
33def post_data(body: DataInput): 1abfgcde
34 content = body.data.decode("utf-8") 1hijk
35 return {"description": body.description, "content": content} 1hijk
38@app.get("/data") 1abfgcde
39def get_data() -> DataOutput: 1abfgcde
40 data = "hello".encode("utf-8") 1lmno
41 return DataOutput(description="A plumbus", data=data) 1lmno
44@app.post("/data-in-out") 1abfgcde
45def post_data_in_out(body: DataInputOutput) -> DataInputOutput: 1abfgcde
46 return body 1pqrs