Skip to content

Commit

Permalink
Avoid timeout caused by Request with large body (#768)
Browse files Browse the repository at this point in the history
* Avoid timeout due to too big requests

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Update request_detail.py

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
  • Loading branch information
quertenmont and pre-commit-ci[bot] authored Feb 3, 2025
1 parent 35c8c01 commit 0a84caa
Showing 1 changed file with 19 additions and 15 deletions.
34 changes: 19 additions & 15 deletions silk/views/request_detail.py
Original file line number Diff line number Diff line change
Expand Up @@ -19,24 +19,28 @@ def get(self, request, request_id):
query_params = None
if silk_request.query_params:
query_params = json.loads(silk_request.query_params)
body = silk_request.raw_body
try:
body = json.loads(body) # Incase encoded as JSON
except (ValueError, TypeError):
pass

context = {
'silk_request': silk_request,
'curl': curl_cmd(url=request.build_absolute_uri(silk_request.path),
method=silk_request.method,
query_params=query_params,
body=body,
content_type=silk_request.content_type),
'query_params': json.dumps(query_params, sort_keys=True, indent=4) if query_params else None,
'client': gen(path=silk_request.path,
method=silk_request.method,
query_params=query_params,
data=body,
content_type=silk_request.content_type),
'request': request
}

if len(silk_request.raw_body) < 20000: # Don't do this for large request
body = silk_request.raw_body
try:
body = json.loads(body) # Incase encoded as JSON
except (ValueError, TypeError):
pass
context['curl'] = curl_cmd(url=request.build_absolute_uri(silk_request.path),
method=silk_request.method,
query_params=query_params,
body=body,
content_type=silk_request.content_type),
context['client'] = gen(path=silk_request.path,
method=silk_request.method,
query_params=query_params,
data=body,
content_type=silk_request.content_type),

return render(request, 'silk/request.html', context)

0 comments on commit 0a84caa

Please sign in to comment.