Skip to main content

Django app for creating database-backed HTTP debug endpoints

Project description

django-http-debug

PyPI Tests Changelog License

Django app for creating database-backed HTTP debug endpoints

Installation

Install this library using pip:

pip install django-http-debug

Configuration

Once installed in the same environment as your Django application, add the following to INSTALLED_APPS in your Django settings:

INSTALLED_APPS = [
    # ...
    'django_http_debug',
    # ...
]

And add this to MIDDLEWARE:

MIDDLEWARE = [
    # ...
    "django_http_debug.middleware.DebugMiddleware",
    # ...
]

Then run ./manage.py migrate to create the necessary database tables.

Usage

You can configure new endpoints in the Django admin. These will only work if they are for URLs that are not yet being served by the rest of your application.

Give an endpoint a path (starting without a /) such as:

webhooks/debug/

You can optionally configure the returned body or HTTP headers here too.

If you want to return a binary body - a GIF for example - you can set that endpoint to use Base64 encoding and then paste a base64-encoded string into the body field.

On macOS you can create base64 strings like this:

base64 -i pixel.gif -o -

Any HTTP requests made to /webhooks/debug/ will be logged in the database. You can view these requests in the Django admin.

You can turn off the "Logging enabled" option on an endpoint to stop logging requests to it to the database.

Development

To contribute to this library, first checkout the code. Then create a new virtual environment:

cd django-http-debug
python -m venv venv
source venv/bin/activate

Now install the dependencies and test dependencies:

pip install -e '.[test]'

To run the tests:

pytest

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

django_http_debug-0.2.tar.gz (10.5 kB view hashes)

Uploaded Source

Built Distribution

django_http_debug-0.2-py3-none-any.whl (12.3 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page