FastAPI extention implementing the tus server
Project description
FastAPI Server for Tus Protocol
A file upload server of the tus resumable upload protocol is implemented on FastAPI framework.
Thanks to tusd, it provides great ideas and a sensible design pattern to implement Tus
protocol to support multiple backend storage implementations.
Features:
- Basic operations to support Core Protocol such as HEAD, POST, PATCH, DELETE
- Creation With Upload
- Checksum such as md5
- Expiration
- Concatenation
- File storage
- S3 storage
Getting started
Import TusRouter
to your application,
from fastapi import FastAPI
from fastapi_tusd import TusRouter
app = FastAPI()
# `store_dir`: the folder to store uploaded files
# `location`: the API endpoint to serve, like `http://127.0.0.1:8000/files` or relative path `files` (TODO: induced from `prefix` in default)
app.include_router(TusRouter(store_dir="./files", location="/files"), prefix="/files")
Then the tus upload endpoints will be served at http://127.0.0.1:8000/files
, more information is available at http://127.0.0.1:8000/docs
Examples
There is a simple example with a web file upload client supporting for Tus
protocol, thanks to Uppy
!
Enter the example/
folder, and run(pip install
uvicornif no
uvicorn`!)
uvicorn app_tusd:app --reload
Then visit https://127.0.0.1:8000/upload.thml
References
GitHub - tus/tus-resumable-upload-protocol: Open Protocol for Resumable File Uploads
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file fastapi-tusd-0.100.2.tar.gz
.
File metadata
- Download URL: fastapi-tusd-0.100.2.tar.gz
- Upload date:
- Size: 9.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.11.9
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 126da8d8558a7986db736026556f95c7ee481dc762a48ddb8f7bbe367ceb9947 |
|
MD5 | 0187a25b2cd668e5efc04cc4f95ceb94 |
|
BLAKE2b-256 | 6cee4f39541ae2d2fcbc0fb0655f08b60609f6f82403ad792d5487ee263c7f68 |
File details
Details for the file fastapi_tusd-0.100.2-py3-none-any.whl
.
File metadata
- Download URL: fastapi_tusd-0.100.2-py3-none-any.whl
- Upload date:
- Size: 8.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.11.9
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | f7f2131dd3875ca6e524fb24a012853613f3ba8b03c545db17794e1930ed9989 |
|
MD5 | 385fa8fb94052d287408252679c0d5fb |
|
BLAKE2b-256 | a5388cdbba13ba19b5e45420cc6d43be1d6ec820447197c422853b472a928574 |