crud-file-server

Crates.iocrud-file-server
lib.rscrud-file-server
version0.3.0
sourcesrc
created_at2021-04-07 22:50:08.012184
updated_at2021-04-12 01:03:52.245728
descriptionA simple HTTP file server with POST, GET, PUT, PATCH and DELETE methods
homepage
repositoryhttps://gitlab.com/rasmusmerzin/crud-file-server
max_upload_size
id380587
size62,707
Emil Rasmus Merzin (rasmusmerzin)

documentation

README

crud-file-server
build license crates docker

A simple HTTP file server with POST, GET, PUT, PATCH and DELETE methods.

Environment Variables

  • DIRECTORY – directory path to write to and read files from
    default: DIRECTORY=content
  • SERVER_ADDR – server socket address
    default: SERVER_ADDR=0.0.0.0:8000

Example

Start

$ cargo run

Create (upload)

$ curl localhost:8000 -d Hello
3718021f-1c23-4dcb-9a90-6d1a74709744

Read (download)

$ curl localhost:8000/3718021f-1c23-4dcb-9a90-6d1a74709744
Hello

Update (overwrite)

$ curl localhost:8000/3718021f-1c23-4dcb-9a90-6d1a74709744 -X put -d Hey
$ curl localhost:8000/3718021f-1c23-4dcb-9a90-6d1a74709744
Hey

Update (append)

$ curl localhost:8000/3718021f-1c23-4dcb-9a90-6d1a74709744 -X patch -d ', World!'
$ curl localhost:8000/3718021f-1c23-4dcb-9a90-6d1a74709744
Hey, World!

Delete

$ curl localhost:8000/3718021f-1c23-4dcb-9a90-6d1a74709744 -X delete

Docker Image

$ docker run -p 8000:8000 rasmusmerzin/crud-file-server

Cargo Crate

$ cargo install crud-file-server
Commit count: 32

cargo fmt