1234567891011121314151617181920212223242526272829303132333435363738394041424344 |
- from .accept import AcceptMixin
- from .auth import AuthorizationMixin
- from .base_request import BaseRequest
- from .common_descriptors import CommonRequestDescriptorsMixin
- from .etag import ETagRequestMixin
- from .user_agent import UserAgentMixin
- class Request(
- BaseRequest,
- AcceptMixin,
- ETagRequestMixin,
- UserAgentMixin,
- AuthorizationMixin,
- CommonRequestDescriptorsMixin,
- ):
- """Full featured request object implementing the following mixins:
- - :class:`AcceptMixin` for accept header parsing
- - :class:`ETagRequestMixin` for etag and cache control handling
- - :class:`UserAgentMixin` for user agent introspection
- - :class:`AuthorizationMixin` for http auth handling
- - :class:`CommonRequestDescriptorsMixin` for common headers
- """
- class StreamOnlyMixin(object):
- """If mixed in before the request object this will change the bahavior
- of it to disable handling of form parsing. This disables the
- :attr:`files`, :attr:`form` attributes and will just provide a
- :attr:`stream` attribute that however is always available.
- .. versionadded:: 0.9
- """
- disable_data_descriptor = True
- want_form_data_parsed = False
- class PlainRequest(StreamOnlyMixin, Request):
- """A request object without special form parsing capabilities.
- .. versionadded:: 0.9
- """
|