echo-server

Crates.ioecho-server
lib.rsecho-server
version2.0.0
sourcesrc
created_at2021-06-06 12:32:09.78332
updated_at2022-01-24 12:02:35.818056
descriptionHTTP echo server
homepage
repository
max_upload_size
id406855
size24,932
Martijn Swaagman (Swaagie)

documentation

README

Echo server

HTTP echo server, that's it.

.github/workflows/build.yaml

Installation

cargo install echo-server

Usage

Defaults:

  • HTTP server listens to 0.0.0.0:8080.
  • HTTP request headers return with the response.
  • GET requests have no body content.
echo-server [-p|--port=8080] [-b|--body="Custom GET response body"]

All HTTP verbs are supported.

GET request

curl -vvv -X GET localhost:8080
curl -vvv -X GET -H "x-random-header: test" localhost:8080

POST request

curl -vvv -X POST -H "Content-Type: application/json" -d '{"hello": "world"}' localhost:8080

Docker

You can run a precompiled image from Docker hub:

docker run --rm -p 8080:8080 --name echo swaagie/echo-server:latest

Or build the image local:

docker build -t echo-server .
docker run --rm -p 8080:8080 --name echo echo-server

Listen on a different port:

docker run --rm -p 8081:8081 --name echo echo-server --port=8081

Contributing

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

Please make sure to update tests as appropriate.

License

MIT

Commit count: 0

cargo fmt