HTTP echo server, that's it.
cargo install echo-server
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.
curl -vvv -X GET localhost:8080
curl -vvv -X GET -H "x-random-header: test" localhost:8080
curl -vvv -X POST -H "Content-Type: application/json" -d '{"hello": "world"}' localhost:8080
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
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.