{"id":13564477,"url":"https://github.com/umputun/echo-http","last_synced_at":"2025-03-17T11:30:35.888Z","repository":{"id":57632775,"uuid":"358172494","full_name":"umputun/echo-http","owner":"umputun","description":"Echo http service","archived":false,"fork":false,"pushed_at":"2025-01-01T18:47:40.000Z","size":434,"stargazers_count":46,"open_issues_count":0,"forks_count":3,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-03-16T11:11:25.508Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://echo.umputun.com","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/umputun.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":["umputun"]}},"created_at":"2021-04-15T07:47:27.000Z","updated_at":"2025-03-07T15:01:12.000Z","dependencies_parsed_at":"2024-01-16T18:58:05.279Z","dependency_job_id":"782bacf6-e3eb-41bc-a8a7-b24a79a2d769","html_url":"https://github.com/umputun/echo-http","commit_stats":{"total_commits":26,"total_committers":4,"mean_commits":6.5,"dds":0.1923076923076923,"last_synced_commit":"7358cf16b61611e269536dda837e1537fb2b595f"},"previous_names":[],"tags_count":7,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/umputun%2Fecho-http","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/umputun%2Fecho-http/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/umputun%2Fecho-http/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/umputun%2Fecho-http/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/umputun","download_url":"https://codeload.github.com/umputun/echo-http/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244025201,"owners_count":20385532,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-08-01T13:01:31.969Z","updated_at":"2025-03-17T11:30:35.080Z","avatar_url":"https://github.com/umputun.png","language":"Go","readme":"# echo-http - Echo http service\n\nResponds with json-formatted echo of the incoming request and with a predefined message.\n\n## installation\n\n- The binary can be installed directly with go install: `go install github.com/umputun/echo-http@latest`\n- Can be downloaded from [releases](https://github.com/umputun/echo-http/releases)\n- For MacOS user can be installed with brew: `brew install umputun/apps/echo-http`\n- For docker there is a multi-arch docker container `ghcr.io/umputun/echo-http`\n\n\n## usage\n\nSend any http request to the server, and it will respond with a json-formatted echo with all the things it knows about the request.\n\n```sh\nhttp https://echo.umputun.com/something\n```\n\n```json\n{\n    \"headers\": {\n        \"Accept\": \"*/*\",\n        \"Accept-Encoding\": \"gzip\",\n        \"User-Agent\": \"HTTPie/2.4.0\",\n        \"X-Forwarded-For\": \"12.12.12.12\",\n        \"X-Forwarded-Host\": \"172.29.0.2:8080\",\n        \"X-Origin-Host\": \"echo.umputun.com\",\n        \"X-Real-Ip\": \"12.12.12.12\"\n    },\n    \"host\": \"172.29.0.2:8080\",\n    \"message\": \"echo echo 123\",\n    \"remote_addr\": \"172.29.0.3:37432\",\n    \"request\": \"GET /something\"\n}\n```\n\nAlternatively, it can be run within cloudflare worker. In this case, the server will respond with the same echo. See [cf-worker.js](https://github.com/umputun/echo-http/blob/master/cf-worker.js) for details. The worker is available at `https://echo.umputun.dev/`.\n\n```sh\nhttp https://echo.umputun.dev/aaaa\n```\n\n```json\n{\n  \"headers\": {\n    \"accept\": \"application/json, */*;q=0.5\",\n    \"accept-encoding\": \"gzip, br\",\n    \"connection\": \"Keep-Alive\",\n    \"content-length\": \"15\",\n    \"content-type\": \"application/json\",\n    \"host\": \"echo.umputun.dev\",\n    \"user-agent\": \"HTTPie/3.2.2\",\n    \"x-forwarded-proto\": \"https\"\n  },\n  \"host\": \"echo.umputun.dev\",\n  \"message\": \"echo\",\n  \"remote_addr\": \"50.123.44.200\",\n  \"request\": \"POST /aaaa\"\n}\n```\n\n## Application options\n\n```\n  -l, --listen=  listen on host:port (default: 0.0.0.0:8080) [$LISTEN]\n  -m, --message= response message (default: echo) [$MESSAGE]\n\nHelp Options:\n  -h, --help     Show this help message\n```\n","funding_links":["https://github.com/sponsors/umputun"],"categories":["Go"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fumputun%2Fecho-http","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fumputun%2Fecho-http","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fumputun%2Fecho-http/lists"}