Sign inSign up

lajosbencz/http-echo

By lajosbencz

Updated almost 3 years ago

Dummy HTTP server diagnostic image

Image
0

731

lajosbencz/http-echo repository overview

http-echo

Yet Another HTTP echo server for dummy payloads, focusing on small image size (~5MB)

Source

https://github.com/lajosbencz/http-echo

Download

Docker Hub
docker pull lajosbencz/http-echo
GitHub Registry
docker pull ghcr.io/lajosbencz/http-echo
GitHub Release Binaries

Config

Arguments
-cors
      Allow CORS
-env
      Overwrite options from ENV
-host string
      Host to listen on (default "0.0.0.0")
-http int
      HTTP port to listen on (default 8080)
-https int
      HTTPS port to listen on, 0 turns it off (default 8443)
-jwt
      Enable parsing of JWT
-jwt-header string
      JWT header name (default "Authorization")
-log-json
      Set log format to JSON
-log-level int
      Logging level of Zerolog (default 1)
Environment

⚠️ Environment variables will only be used if -env flag was enabled (enabled by default for Docker image)

LOG_JSON="0"
LOG_LEVEL="1"
LISTEN_HOST="0.0.0.0"
LISTEN_HTTP="8080"
LISTEN_HTTPS="8443"
CORS_ENABLED="0"
JWT_ENABLED="0"
JWT_HEADER="Authorization"

Example

Request
JWT_TOKEN="..."
curl -s \
-X POST \
-H "X-Set-Response-Status-Code: 401" \
-H "X-Set-Response-Delay-Ms: 1000" \
-H "Content-Type: application/json" \
-H "${JWT_HEADER}: Bearer ${JWT_TOKEN}" \
-d '{"foo":"bar"}' \
"http://localhost:${LISTEN_HTTP}/foo?baz=bax"
Response
{
  "status_code": 401,
  "hostname": "localhost:8080",
  "path": "/foo",
  "method": "POST",
  "query": {
    "baz": [
      "bax"
    ]
  },
  "headers": {
    "Accept": [
      "*/*"
    ],
    "Authorization": [
      "Bearer ..."
    ],
    "Content-Length": [
      "13"
    ],
    "Content-Type": [
      "application/json"
    ],
    "User-Agent": [
      "curl/7.68.0"
    ]
  },
  "json": {
    "foo": "bar"
  },
  "jwt": {
    "header": {
      "alg": "HS256"
    },
    "payload": {
      "name": "Joe Coder"
    },
    "signature": "..."
  }
}

Tag summary

Content type

Image

Digest

sha256:d2a48d8d0

Size

2.2 MB

Last updated

almost 3 years ago

docker pull lajosbencz/http-echo