Opened 3 years ago

Last modified 9 months ago

#21442 assigned New feature

Configurable request parsing.

Reported by: tomchristie Owned by: tomchristie
Component: HTTP handling Version: master
Severity: Normal Keywords:
Cc: antonis+djangoproject.com@… Triage Stage: Accepted
Has patch: no Needs documentation: no
Needs tests: no Patch needs improvement: no
Easy pickings: no UI/UX: no

Description

This ticket if for implementing a request parsing API that ensures the Request objects can nicely handle JSON and other submitted types in addition the the existing multipart parsing.

The proposed API is based on this discussion: https://groups.google.com/forum/#!searchin/django-developers/request.DATA/django-developers/s8OZ9yNh-8c/oCbNL5x6avAJ

  • request.DATA or request.data for accessing the parsed data.
  • request.parsers or similar for modifying the parsers prior to parsing on a per-view basis.
  • request.accepted_parser or similar for branching on media type if needed.
  • A setting REQUEST_PARSERS or similar, that controls the default set of installed parsers.

Change History (5)

comment:1 Changed 3 years ago by timo

  • Needs documentation unset
  • Needs tests unset
  • Patch needs improvement unset
  • Triage Stage changed from Unreviewed to Accepted

comment:2 Changed 2 years ago by akanouras

  • Cc antonis+djangoproject.com@… added

comment:3 Changed 22 months ago by tomchristie

  • Owner changed from nobody to tomchristie
  • Status changed from new to assigned

comment:4 Changed 9 months ago by auvipy

https://github.com/django/deps/blob/master/draft/content-negotiation.rst

reading the DEP

my thoughts are wouldn't it better/nicer to handle the content negotiation per view based content negotiation? and there should be decorators to handle content negotiation in view level?

+ is it really necessary to introduce new global settings?

comment:5 Changed 9 months ago by auvipy

or this is the HTTP Handling part only? view parts will be implemented differently in another ticket? serialization in another part? hope you don't get me wrong for asking too many questions.

Note: See TracTickets for help on using tickets.
Back to Top