diff --git a/README.md b/README.md index 52408cc..5659ae5 100644 --- a/README.md +++ b/README.md @@ -4,6 +4,27 @@ Tiny Go webserver that prints os information and HTTP request to output +## Usage + +### Flags + +- `cert`: give me a certificate. +- `key`: give me a key. +- `port`: give me a port number. (default: 80) + +### Paths + +- `/data?size=n`: creates a response with a size `n`. +- `/echo`: webSocket echo. +- `/bench`: always return the same response (`1`). +- `/`: returns the whoami information (request and network information). +- `/api`: returns the whoami information as JSON. +- `/health`: heath check + - `GET`, `HEAD`, ...: returns a response with the status code defined by the `POST` + - `POST`: changes the status code of the `GET` (`HEAD`, ...) response. + +## Examples + ```console $ docker run -d -P --name iamfoo containous/whoami $ docker inspect --format '{{ .NetworkSettings.Ports }}' iamfoo diff --git a/app.go b/app.go index 9eeb58c..f8d9511 100644 --- a/app.go +++ b/app.go @@ -211,6 +211,7 @@ func apiHandler(w http.ResponseWriter, req *http.Request) { } } + w.Header().Set("Content-Type", "application/json") if err := json.NewEncoder(w).Encode(data); err != nil { http.Error(w, err.Error(), http.StatusInternalServerError) return