{"id":15804194,"url":"https://github.com/cle-b/httpdbg","last_synced_at":"2026-04-02T16:33:39.750Z","repository":{"id":40540461,"uuid":"273906263","full_name":"cle-b/httpdbg","owner":"cle-b","description":"A tool for Python developers to easily debug the HTTP(S) client and server requests in a Python program.","archived":false,"fork":false,"pushed_at":"2026-03-28T10:53:22.000Z","size":861,"stargazers_count":898,"open_issues_count":4,"forks_count":26,"subscribers_count":2,"default_branch":"main","last_synced_at":"2026-03-28T13:58:27.664Z","etag":null,"topics":["aiohttp","debug","fastapi","flask","h2","http","http2","httpdbg","httpx","pyhttpdbg","pytest","python","python-requests","requests","rest","rest-api","tools","unittest","urllib3"],"latest_commit_sha":null,"homepage":"https://httpdbg.readthedocs.io/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/cle-b.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2020-06-21T13:08:02.000Z","updated_at":"2026-03-28T10:34:00.000Z","dependencies_parsed_at":"2023-11-30T07:28:44.605Z","dependency_job_id":"6c416a6b-61f8-43e9-bf9e-0bf2945ba5a3","html_url":"https://github.com/cle-b/httpdbg","commit_stats":null,"previous_names":[],"tags_count":148,"template":false,"template_full_name":null,"purl":"pkg:github/cle-b/httpdbg","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cle-b%2Fhttpdbg","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cle-b%2Fhttpdbg/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cle-b%2Fhttpdbg/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cle-b%2Fhttpdbg/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/cle-b","download_url":"https://codeload.github.com/cle-b/httpdbg/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cle-b%2Fhttpdbg/sbom","scorecard":{"id":145042,"data":{"date":"2025-08-11","repo":{"name":"github.com/cle-b/httpdbg","commit":"3d9e145b4ff874c82d04d17749531c7154cd2771"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":4,"checks":[{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Maintained","score":7,"reason":"7 commit(s) and 2 issue activity found in the last 90 days -- score normalized to 7","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Code-Review","score":0,"reason":"Found 0/30 approved changesets -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/build.yml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/build.yml:12: update your workflow using https://app.stepsecurity.io/secureworkflow/cle-b/httpdbg/build.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/build.yml:14: update your workflow using https://app.stepsecurity.io/secureworkflow/cle-b/httpdbg/build.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/build.yml:28: update your workflow using https://app.stepsecurity.io/secureworkflow/cle-b/httpdbg/build.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/build.yml:30: update your workflow using https://app.stepsecurity.io/secureworkflow/cle-b/httpdbg/build.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/build.yml:55: update your workflow using https://app.stepsecurity.io/secureworkflow/cle-b/httpdbg/build.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/build.yml:57: update your workflow using https://app.stepsecurity.io/secureworkflow/cle-b/httpdbg/build.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/build.yml:75: update your workflow using https://app.stepsecurity.io/secureworkflow/cle-b/httpdbg/build.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/build.yml:77: update your workflow using https://app.stepsecurity.io/secureworkflow/cle-b/httpdbg/build.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/build.yml:92: update your workflow using https://app.stepsecurity.io/secureworkflow/cle-b/httpdbg/build.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/build.yml:101: update your workflow using https://app.stepsecurity.io/secureworkflow/cle-b/httpdbg/build.yml/main?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/build.yml:35","Warn: pipCommand not pinned by hash: .github/workflows/build.yml:82","Warn: pipCommand not pinned by hash: .github/workflows/build.yml:83","Warn: pipCommand not pinned by hash: .github/workflows/build.yml:84","Info:   0 out of   9 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   1 third-party GitHubAction dependencies pinned","Info:   0 out of   4 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: Apache License 2.0: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":5,"reason":"branch protection is not maximal on development and all release branches","details":["Info: 'allow deletion' disabled on branch 'main'","Info: 'force pushes' disabled on branch 'main'","Warn: 'branch protection settings apply to administrators' is disabled on branch 'main'","Warn: 'stale review dismissal' is disabled on branch 'main'","Warn: required approving review count is 1 on branch 'main'","Warn: codeowners review is not required on branch 'main'","Warn: 'last push approval' is disabled on branch 'main'","Warn: no status checks found to merge onto branch 'main'","Info: PRs are required in order to make changes on branch 'main'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"Packaging","score":10,"reason":"packaging workflow detected","details":["Info: Project packages its releases by way of GitHub Actions.: .github/workflows/build.yml:66"],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Vulnerabilities","score":0,"reason":"48 existing vulnerabilities detected","details":["Warn: Project is vulnerable to: PYSEC-2023-120 / GHSA-45c4-8wx5-qw6w","Warn: Project is vulnerable to: GHSA-5m98-qgg9-wh84","Warn: Project is vulnerable to: GHSA-7gpw-8wmc-pm8g","Warn: Project is vulnerable to: GHSA-8495-4g3g-x7pr","Warn: Project is vulnerable to: PYSEC-2024-26 / GHSA-8qpw-xqxj-h4r2","Warn: Project is vulnerable to: GHSA-9548-qrrj-x5pj","Warn: Project is vulnerable to: PYSEC-2023-246 / GHSA-gfw2-4jvh-wgfg","Warn: Project is vulnerable to: GHSA-pjjw-qhg8-p2p9","Warn: Project is vulnerable to: PYSEC-2023-250 / GHSA-q3qx-c6g2-7pw2","Warn: Project is vulnerable to: PYSEC-2023-251 / GHSA-qvrw-v9rv-5rjx","Warn: Project is vulnerable to: PYSEC-2021-76 / GHSA-v6wp-4m6f-gcjg","Warn: Project is vulnerable to: PYSEC-2023-247 / GHSA-xx9p-xxvh-7g8j","Warn: Project is vulnerable to: PYSEC-2024-48 / GHSA-fj7x-q9j7-g6q6","Warn: Project is vulnerable to: PYSEC-2021-100 / GHSA-8h2j-cgx8-6xv7","Warn: Project is vulnerable to: PYSEC-2024-38","Warn: Project is vulnerable to: PYSEC-2018-66 / GHSA-562c-5r94-xh97","Warn: Project is vulnerable to: PYSEC-2019-179 / GHSA-5wv5-4vpf-pj6m","Warn: Project is vulnerable to: PYSEC-2023-62 / GHSA-m2qf-hxjv-5gpq","Warn: Project is vulnerable to: PYSEC-2022-183 / GHSA-h8pj-cxx2-jfg2","Warn: Project is vulnerable to: PYSEC-2019-217 / GHSA-462w-v97r-4m45","Warn: Project is vulnerable to: PYSEC-2014-8 / GHSA-8r7q-cvjq-x353","Warn: Project is vulnerable to: GHSA-cpwx-vrp4-4pq7","Warn: Project is vulnerable to: PYSEC-2014-82 / GHSA-fqh9-2qgg-h84h","Warn: Project is vulnerable to: PYSEC-2021-66 / GHSA-g3rq-g295-4j3m","Warn: Project is vulnerable to: GHSA-h5c8-rqwp-cp95","Warn: Project is vulnerable to: GHSA-h75v-3vvj-5mfj","Warn: Project is vulnerable to: PYSEC-2019-220 / GHSA-hj2j-77xm-mc5v","Warn: Project is vulnerable to: GHSA-q2x7-8rv6-6q7h","Warn: Project is vulnerable to: PYSEC-2014-14 / GHSA-652x-xj99-gmcc","Warn: Project is vulnerable to: GHSA-9hjg-9r4m-mvj7","Warn: Project is vulnerable to: GHSA-9wx4-h78v-vm56","Warn: Project is vulnerable to: PYSEC-2014-13 / GHSA-cfj3-7x9c-4p3h","Warn: Project is vulnerable to: PYSEC-2018-28 / GHSA-x84v-xcm2-53pg","Warn: Project is vulnerable to: PYSEC-2013-22 / GHSA-27x4-j476-jp5f","Warn: Project is vulnerable to: PYSEC-2025-49 / GHSA-5rjg-fvgr-3xxf","Warn: Project is vulnerable to: GHSA-cx63-2mw6-8hw5","Warn: Project is vulnerable to: PYSEC-2022-43012 / GHSA-r9hx-vwmv-q579","Warn: Project is vulnerable to: GHSA-2g68-c3qc-8985","Warn: Project is vulnerable to: PYSEC-2020-157 / GHSA-3p3h-qghp-hvh2","Warn: Project is vulnerable to: GHSA-f9vj-2wh5-fj8j","Warn: Project is vulnerable to: PYSEC-2019-140 / GHSA-gq9m-qvpx-68hc","Warn: Project is vulnerable to: PYSEC-2017-43 / GHSA-h2fp-xgx6-xh6f","Warn: Project is vulnerable to: PYSEC-2023-221 / GHSA-hrfv-mqp8-q5rw","Warn: Project is vulnerable to: GHSA-j544-7q9p-6xp8","Warn: Project is vulnerable to: PYSEC-2023-57 / GHSA-px8h-6qxv-m22q","Warn: Project is vulnerable to: GHSA-q34m-jh98-gwm2","Warn: Project is vulnerable to: PYSEC-2023-58 / GHSA-xg9f-g7g7-2323","Warn: Project is vulnerable to: PYSEC-2022-203"],"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 27 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}}]},"last_synced_at":"2025-08-16T09:13:27.941Z","repository_id":40540461,"created_at":"2025-08-16T09:13:27.941Z","updated_at":"2025-08-16T09:13:27.941Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31310100,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-02T12:59:32.332Z","status":"ssl_error","status_checked_at":"2026-04-02T12:54:48.875Z","response_time":89,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["aiohttp","debug","fastapi","flask","h2","http","http2","httpdbg","httpx","pyhttpdbg","pytest","python","python-requests","requests","rest","rest-api","tools","unittest","urllib3"],"created_at":"2024-10-05T02:01:20.019Z","updated_at":"2026-04-02T16:33:39.741Z","avatar_url":"https://github.com/cle-b.png","language":"Python","readme":"# httpdbg\n\n`httpdbg` is a tool for Python developers to easily debug the HTTP(S) client and server requests in a Python program.\n\nTo use it, execute your program using the `pyhttpdbg` command instead of `python` and that's it. Open a browser to `http://localhost:4909` to view the requests:\n\n![](https://github.com/cle-b/httpdbg/blob/main/ui.png?raw=true)\n\nSupports `HTTP/1.0`, `HTTP/1.1`, and `HTTP/2`.\n\nFull documentation =\u003e [https://httpdbg.readthedocs.io/](https://httpdbg.readthedocs.io/en/latest/)\n\n## installation \n\n```\npip install httpdbg\n```\n\n## usage\n\nBy default, both client and server requests are recorded. To record only client requests, use the `--only-client` command line argument.\n\n### interactive console\n\nOpen an interactive console using the command `pyhttpdbg`.\n\n```console\n(venv) dev@host:~/dir$ pyhttpdbg \n.... - - .--. -.. -... --. .... - - .--. -.. -... --. .... - - .--. -.. -... --.\n  httpdbg - HTTP(S) requests available at http://localhost:4909/\n.... - - .--. -.. -... --. .... - - .--. -.. -... --. .... - - .--. -.. -... --.\nPython 3.10.6 (main, Aug 10 2022, 11:40:04) [GCC 11.3.0] on linux\nType \"help\", \"copyright\", \"credits\" or \"license\" for more information.\n(InteractiveConsole)\n\u003e\u003e\u003e \n```\n\nPerform HTTP requests.\n\nYou can inspect the HTTP requests directly in your web browser at http://localhost:4909.\n\n### script\n\nYou can trace all the HTTP requests performed by a script\n\n```console\npyhttpdbg --script filename.py [arg1 --arg2 ...]\n```\n\n### module\n\nYou can trace all the HTTP requests performed by a library module run as a script using the `-m` command line argument.\n\nFor example, you can view which HTTP requests are performed by `pip` when you install a package.\n\n```console\npyhttpdbg -m pip install hookdns --upgrade\n```\n\n### test frameworks\n\nYou can trace all HTTP requests made during your tests (pytest, unittest).\n\n```console\npyhttpdbg -m pytest [arg1 --arg2 ...]\n```\n\nIn that case, the requests will be grouped by test, and any requests made within a fixture or the setup/teardown methods will be identified by a tag.\n\n\n### HTTP server\n\nYou can trace all HTTP requests received by your HTTP server.\n\n```console\npyhttpdbg -m flask --app demoflask run\n.... - - .--. -.. -... --. .... - - .--. -.. -... --. .... - - .--. -.. -... --.\n  httpdbg - HTTP(S) requests available at http://localhost:4909/\n.... - - .--. -.. -... --. .... - - .--. -.. -... --. .... - - .--. -.. -... --.\n * Serving Flask app 'demoflask'\n * Debug mode: off\nWARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.\n * Running on http://127.0.0.1:5000\nPress CTRL+C to quit\n127.0.0.1 - - [14/Mar/2025 17:47:42] \"GET / HTTP/1.1\" 200 -\n127.0.0.1 - - [14/Mar/2025 17:47:50] \"GET /hello/Ben HTTP/1.1\" 200 -\n127.0.0.1 - - [14/Mar/2025 17:47:56] \"GET /oups HTTP/1.1\" 404 -\n```\n\n![httpdbg 1.1.0 - pyhttpdbg -m flask --app demoflask run](https://github.com/cle-b/httpdbg/blob/main/ui_server.png?raw=true)\n\n\n## initiators and groups\n \nAn initiator is the function/method that is at the origin of the HTTP requests. By default, we already support some packages but you can add your own initiators. \n\nTo add a new package in the list of initiators, you can use the `-i` command line argument:\n\n```console\npyhttpdbg -i api_client_pck --script my_script.py\n```\n\nYou can use any package as an initiator, this is not limited to HTTP requests.\n\n### supported HTTP client\n\nThe initiator is the highest-level method used to make the request through the client. The group and the initiator are identical. If a request to a URL generates multiple requests, as in the case of redirection, all these requests will be grouped together.\n\n| packages       | status                              | initiator | group     |\n|----------------|-------------------------------------|-----------|-----------|\n| requests       | supported                           | yes       | yes       |\n| urllib3        | supported                           | yes       | yes       |\n| httpx          | supported                           | yes       | yes       |\n| aiohttp        | supported                           | yes       | yes       |\n| _your_package_ | yes, with the arg _-i your_package_ | yes       | yes       |\n\n### supported HTTP server\n\nThe initiator is the low-level socket method that receives the data. The group is the endpoint method used to handle the request. A client request made within the endpoint method will be included in this group.\n\n| packages       | status                              | initiator | group     |\n|----------------|-------------------------------------|-----------|-----------|\n| flask          | supported                           | -         | yes       |\n| fastapi        | supported                           | -         | yes       |\n\n### supported test framework\n\nThe requests are grouped by tests.\n\n| packages       | status                              | initiator | group     |\n|----------------|-------------------------------------|-----------|-----------|\n| pytest         | supported                           | -         | yes       |\n| unittest       | supported                           | -         | yes       |\n\n### supported HTTP version\n\n| version        | status                                                      |     \n|----------------|-------------------------------------------------------------|\n| 1.0            | supported                                                   |\n| 1.1            | supported                                                   |\n| 2              | supported (only through the `h2` lib)                       |\n\n\n\n## configuration\n\nNo configuration is necessary to start but some few settings are available for particular use.\n\n### command line\n\n```console\nusage: pyhttpdbg [-h] [--host HOST] [--port PORT] [--version]\n                 [--initiator INITIATOR] [--only-client]\n                 [--keep-up | --force-quit]                 \n                 [--console | --module MODULE | --script SCRIPT]\n\nhttdbg - a very simple tool to debug HTTP(S) client requests\n\noptions:\n  -h, --help            show this help message and exit\n  --host HOST           the web interface host IP address\n  --port PORT, -p PORT  the web interface port\n  --version, -v         print the httpdbg version\n  --initiator INITIATOR, -i INITIATOR\n                        add a new initiator (package)\n  --only-client         record only HTTP client requests\n  --keep-up, -k         keep the server up even if the requests have been read\n  --force-quit, -q      stop the server even if the requests have not been read\n  --export-html EXPORT_HTML\n                        the path to the export file\n  --console             run a python console (default)\n  --module MODULE, -m MODULE\n                        run library module as a script (the next args are passed to pytest as is)\n  --script SCRIPT       run a script (the next args are passed to the script as is)\n```\n\n### web interace \n\nSome options are available to customize the UI:\n\n  * Change the strategy to group the requests.\n  * Hide the scheme and the network location in the url.\n  * Hide the group rows.\n  * Hide the tags.\n  * ...\n\nYou can also pin a request or delete all unpinned requests.\n\nTo keep your configuration, bookmark the page with the full search query.\n\nFox example, if you want to hide the group rows by default, the url will be:\n```\nhttp://localhost:4909/?hi=on\n```\n\n## web interface\n\nAll the requests recorded are available on the web interface. \n\nThe requests:\n * are still available in the web page even if the python process stopped (except if you force quit before the requests have been loaded by the web page).\n * are automatically cleaned if a new execution is detected.\n\n## export\n\nYou can export the HTTP traces in a single HTML file. In that case, the web interface is not available during the execution of the python command. \n\n## limitations\n\nTheoretically, if your HTTP client or server uses a standard Python socket, the HTTP requests will be recorded.\n\nSupport for recording requests on the server side is new in `httpdbg 1.0.0`. In some cases, like with |FastAPI| using |uvloop|, we had to implement a new mechanism to make request recording possible. This is still a work in progress as we aim to support more frameworks.\n\n## documentation\n\nhttps://httpdbg.readthedocs.io\n","funding_links":[],"categories":["Python"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcle-b%2Fhttpdbg","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcle-b%2Fhttpdbg","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcle-b%2Fhttpdbg/lists"}