@@ -44,6 +44,10 @@ Usage of basichttpdebugger:
4444 save filename format of raw http (default " %Y-%m-%d-%H%i%s-{hostname}-{url}.raw" )
4545 -save-raw-http-request
4646 enable saving of raw http request
47+ -secret-token string
48+ your secret token value
49+ -secret-token-header-name string
50+ name of your secret token header, e.g. X-Gitlab-Token
4751 -version
4852 display version information
4953```
@@ -67,6 +71,14 @@ basichttpdebugger -listen ":8000" -hmac-secret "<secret>" -hmac-header-name "<X-
6771basichttpdebugger -color -listen " :8000" -hmac-secret " <secret>" -hmac-header-name " <X-HEADER-NAME>"
6872```
6973
74+ Instead of HMAC validation, you can check against secret token/secret token
75+ header name. Consider you are testing GitLab webhooks and you’ll receive
76+ ` X-Gitlab-Token ` with a value ` test ` :
77+
78+ ``` bash
79+ basichttpdebugger -listen " :8000" -secret-token-header-name " X-Gitlab-Token" -secret-token " test"
80+ ```
81+
7082Instead of standard output, pipe everything to file!
7183
7284``` bash
@@ -134,9 +146,13 @@ go run . -listen ":8000" # listens at :8000
134146# or if you have ruby installed, use rake tasks!
135147rake # listens at :9002
136148LISTEN=" :8000" rake # listens at :8000
149+
137150LISTEN=" :8000" HMAC_SECRET=" <secret>" HMAC_HEADER_NAME=" <X-HEADER-NAME>" rake
138151LISTEN=" :8000" HMAC_SECRET=" <secret>" HMAC_HEADER_NAME=" <X-HEADER-NAME>" COLOR=1 rake
139152LISTEN=" :8000" HMAC_SECRET=" <secret>" HMAC_HEADER_NAME=" <X-HEADER-NAME>" OUTPUT=" /tmp/foo" rake
153+
154+ LISTEN=" :8000" SECRET_TOKEN=" <secret>" SECRET_TOKEN_HEADER_NAME=" <X-HEADER-NAME>" rake
155+
140156SAVE_RAW_HTTP_REQUEST=t rake
141157SAVE_RAW_HTTP_REQUEST=t SAVE_FORMAT=" ~/Desktop/%Y-%m-%d-%H%i%s-test.raw" rake
142158```
@@ -149,6 +165,8 @@ SAVE_RAW_HTTP_REQUEST=t SAVE_FORMAT="~/Desktop/%Y-%m-%d-%H%i%s-test.raw" rake
149165| :-----| :---------------------| ---------------|
150166| ` -hmac-header-name ` | ` HMAC_HEADER_NAME ` | Not set |
151167| ` -hmac-secret ` | ` HMAC_SECRET ` | Not set |
168+ | ` -secret-token ` | ` SECRET_TOKEN ` | Not set |
169+ | ` -secret-token-header-name ` | ` SECRET_TOKEN_HEADER_NAME ` | Not set |
152170| ` -color ` | ` COLOR ` | ` false ` |
153171| ` -listen ` | ` LISTEN ` | ` :9002 ` |
154172| ` -output ` | ` OUTPUT ` | ` stdout ` |
@@ -305,6 +323,16 @@ Here is how it looks, a GitHub webhook (trimmed, masked due to it’s huge/priva
305323 {"action":"created","issue":{"url": ...} ... }
306324 ----------------------------------------------------------------------------------------------------
307325
326+ If you are checking secret token/secret token header (` test ` , ` X-Gitlab-Token ` ),
327+ you’ll see something like this in Payload section:
328+
329+ +-----------------------------------+-----------------------------+
330+ | Payload | |
331+ +-----------------------------------+-----------------------------+
332+ | Secret Token | test |
333+ | Secret Token Header Name | X-Gitlab-Token |
334+ | Secret Token Matches? | true |
335+ +-----------------------------------+-----------------------------+
308336
309337---
310338
@@ -318,6 +346,7 @@ docker build -t <your-image> .
318346docker run -p 9002:9002 < your-image> # run from default port
319347docker run -p 8400:8400 < your-image> -listen " :8400" # run from 8400
320348docker run -p 8400:8400 < your-image> -listen " :8400" -hmac-secret " <secret>" -hmac-header-name " <X-HEADER-NAME>"
349+ docker run -p 8400:8400 < your-image> -listen " :8400" -secret-token " <secret>" -secret-token-header-name " <X-HEADER-NAME>"
321350```
322351
323352You can download/use from docker hub or ghcr:
@@ -334,6 +363,9 @@ docker run -p 8400:8400 vigo/basichttpdebugger -listen ":8400" # run from 840
334363# run from docker hub on port 9100 with hmac support
335364docker run -p 9100:9100 vigo/basichttpdebugger -listen " :9100" -hmac-secret " <secret>" -hmac-header-name " <X-HEADER-NAME>"
336365
366+ # run from docker hub on port 9100 with secret token/secret token header name support
367+ docker run -p 9100:9100 vigo/basichttpdebugger -listen " :9100" -secret-token " <secret>" -secret-token-header-name " <X-HEADER-NAME>"
368+
337369# run from ghcr on default port
338370docker run -p 9002:9002 ghcr.io/vbyazilim/basichttpdebugger/basichttpdebugger:latest
339371
@@ -363,6 +395,11 @@ rake test # run test
363395
364396## Change Log
365397
398+ ** 2025-02-02**
399+
400+ - improve ` stringutils ` tests
401+ - add secret token/secret token header name support
402+
366403** 2024-12-24**
367404
368405- refactor from scratch
0 commit comments