Skip to content

Instantly share code, notes, and snippets.

@adamcharnock
Forked from defrex/pretty_request.py
Created December 13, 2018 12:51
Show Gist options
  • Save adamcharnock/3ed82cc8f0cf01737ed0f4bf454732c8 to your computer and use it in GitHub Desktop.
Save adamcharnock/3ed82cc8f0cf01737ed0f4bf454732c8 to your computer and use it in GitHub Desktop.
A simple function to print a Django request the way requests are meant to be printed.
def pretty_request(request):
headers = ''
for header, value in request.META.items():
if not header.startswith('HTTP'):
continue
header = '-'.join([h.capitalize() for h in header[5:].lower().split('_')])
headers += '{}: {}\n'.format(header, value)
return (
'{method} HTTP/1.1\n'
'Content-Length: {content_length}\n'
'Content-Type: {content_type}\n'
'{headers}\n\n'
'{body}'
).format(
method=request.method,
content_length=request.META['CONTENT_LENGTH'],
content_type=request.META['CONTENT_TYPE'],
headers=headers,
body=request.body,
)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment