15 changed files with 11 additions and 222 deletions
@ -1,22 +0,0 @@ |
|||
from typing import Union |
|||
|
|||
from fastapi import FastAPI, File, UploadFile |
|||
from typing_extensions import Annotated |
|||
|
|||
app = FastAPI() |
|||
|
|||
|
|||
@app.post("/files/") |
|||
async def create_file(file: Annotated[Union[bytes, None], File()] = None): |
|||
if not file: |
|||
return {"message": "No file sent"} |
|||
else: |
|||
return {"file_size": len(file)} |
|||
|
|||
|
|||
@app.post("/uploadfile/") |
|||
async def create_upload_file(file: Union[UploadFile, None] = None): |
|||
if not file: |
|||
return {"message": "No upload file sent"} |
|||
else: |
|||
return {"filename": file.filename} |
|||
@ -1,16 +0,0 @@ |
|||
from fastapi import FastAPI, File, UploadFile |
|||
from typing_extensions import Annotated |
|||
|
|||
app = FastAPI() |
|||
|
|||
|
|||
@app.post("/files/") |
|||
async def create_file(file: Annotated[bytes, File(description="A file read as bytes")]): |
|||
return {"file_size": len(file)} |
|||
|
|||
|
|||
@app.post("/uploadfile/") |
|||
async def create_upload_file( |
|||
file: Annotated[UploadFile, File(description="A file read as UploadFile")], |
|||
): |
|||
return {"filename": file.filename} |
|||
@ -1,14 +0,0 @@ |
|||
from fastapi import FastAPI, File, UploadFile |
|||
from typing_extensions import Annotated |
|||
|
|||
app = FastAPI() |
|||
|
|||
|
|||
@app.post("/files/") |
|||
async def create_file(file: Annotated[bytes, File()]): |
|||
return {"file_size": len(file)} |
|||
|
|||
|
|||
@app.post("/uploadfile/") |
|||
async def create_upload_file(file: UploadFile): |
|||
return {"filename": file.filename} |
|||
@ -1,33 +0,0 @@ |
|||
from typing import List |
|||
|
|||
from fastapi import FastAPI, File, UploadFile |
|||
from fastapi.responses import HTMLResponse |
|||
|
|||
app = FastAPI() |
|||
|
|||
|
|||
@app.post("/files/") |
|||
async def create_files(files: List[bytes] = File()): |
|||
return {"file_sizes": [len(file) for file in files]} |
|||
|
|||
|
|||
@app.post("/uploadfiles/") |
|||
async def create_upload_files(files: List[UploadFile]): |
|||
return {"filenames": [file.filename for file in files]} |
|||
|
|||
|
|||
@app.get("/") |
|||
async def main(): |
|||
content = """ |
|||
<body> |
|||
<form action="/files/" enctype="multipart/form-data" method="post"> |
|||
<input name="files" type="file" multiple> |
|||
<input type="submit"> |
|||
</form> |
|||
<form action="/uploadfiles/" enctype="multipart/form-data" method="post"> |
|||
<input name="files" type="file" multiple> |
|||
<input type="submit"> |
|||
</form> |
|||
</body> |
|||
""" |
|||
return HTMLResponse(content=content) |
|||
@ -1,34 +0,0 @@ |
|||
from typing import List |
|||
|
|||
from fastapi import FastAPI, File, UploadFile |
|||
from fastapi.responses import HTMLResponse |
|||
from typing_extensions import Annotated |
|||
|
|||
app = FastAPI() |
|||
|
|||
|
|||
@app.post("/files/") |
|||
async def create_files(files: Annotated[List[bytes], File()]): |
|||
return {"file_sizes": [len(file) for file in files]} |
|||
|
|||
|
|||
@app.post("/uploadfiles/") |
|||
async def create_upload_files(files: List[UploadFile]): |
|||
return {"filenames": [file.filename for file in files]} |
|||
|
|||
|
|||
@app.get("/") |
|||
async def main(): |
|||
content = """ |
|||
<body> |
|||
<form action="/files/" enctype="multipart/form-data" method="post"> |
|||
<input name="files" type="file" multiple> |
|||
<input type="submit"> |
|||
</form> |
|||
<form action="/uploadfiles/" enctype="multipart/form-data" method="post"> |
|||
<input name="files" type="file" multiple> |
|||
<input type="submit"> |
|||
</form> |
|||
</body> |
|||
""" |
|||
return HTMLResponse(content=content) |
|||
@ -1,37 +0,0 @@ |
|||
from typing import List |
|||
|
|||
from fastapi import FastAPI, File, UploadFile |
|||
from fastapi.responses import HTMLResponse |
|||
|
|||
app = FastAPI() |
|||
|
|||
|
|||
@app.post("/files/") |
|||
async def create_files( |
|||
files: List[bytes] = File(description="Multiple files as bytes"), |
|||
): |
|||
return {"file_sizes": [len(file) for file in files]} |
|||
|
|||
|
|||
@app.post("/uploadfiles/") |
|||
async def create_upload_files( |
|||
files: List[UploadFile] = File(description="Multiple files as UploadFile"), |
|||
): |
|||
return {"filenames": [file.filename for file in files]} |
|||
|
|||
|
|||
@app.get("/") |
|||
async def main(): |
|||
content = """ |
|||
<body> |
|||
<form action="/files/" enctype="multipart/form-data" method="post"> |
|||
<input name="files" type="file" multiple> |
|||
<input type="submit"> |
|||
</form> |
|||
<form action="/uploadfiles/" enctype="multipart/form-data" method="post"> |
|||
<input name="files" type="file" multiple> |
|||
<input type="submit"> |
|||
</form> |
|||
</body> |
|||
""" |
|||
return HTMLResponse(content=content) |
|||
@ -1,40 +0,0 @@ |
|||
from typing import List |
|||
|
|||
from fastapi import FastAPI, File, UploadFile |
|||
from fastapi.responses import HTMLResponse |
|||
from typing_extensions import Annotated |
|||
|
|||
app = FastAPI() |
|||
|
|||
|
|||
@app.post("/files/") |
|||
async def create_files( |
|||
files: Annotated[List[bytes], File(description="Multiple files as bytes")], |
|||
): |
|||
return {"file_sizes": [len(file) for file in files]} |
|||
|
|||
|
|||
@app.post("/uploadfiles/") |
|||
async def create_upload_files( |
|||
files: Annotated[ |
|||
List[UploadFile], File(description="Multiple files as UploadFile") |
|||
], |
|||
): |
|||
return {"filenames": [file.filename for file in files]} |
|||
|
|||
|
|||
@app.get("/") |
|||
async def main(): |
|||
content = """ |
|||
<body> |
|||
<form action="/files/" enctype="multipart/form-data" method="post"> |
|||
<input name="files" type="file" multiple> |
|||
<input type="submit"> |
|||
</form> |
|||
<form action="/uploadfiles/" enctype="multipart/form-data" method="post"> |
|||
<input name="files" type="file" multiple> |
|||
<input type="submit"> |
|||
</form> |
|||
</body> |
|||
""" |
|||
return HTMLResponse(content=content) |
|||
Loading…
Reference in new issue