>From what I can see in the rfc, it is permitted but not required.

Only a body in a 204 response is proscribed.

Any metadata (I.e. headers) are about the resource just accessed... So a 
Content-Type would, IMHO, be acceptable but not essential.



On 26 December 2016 9:47:02 PM AEDT, roboslone <robosl...@gmail.com> wrote:
>Thanks, that was an old setting in Mail.app =/
>
>I've made a pull-request to DRF:
>https://github.com/tomchristie/django-rest-framework/pull/4768
><https://github.com/tomchristie/django-rest-framework/pull/4768>
>But it seems to me that fixing it in Django would be more appropriate.
>
>On the subject of Content-Type header with no response body, seems
>there's no convention about it, I've found different opinions on the
>web. The only thing I'm sure about is that putting None in that header
>is a bad idea.
>
>> On 26 Dec 2016, at 13:24, Adam Johnson <m...@adamj.eu> wrote:
>> 
>> Hi GMail! (you might want to fix your name used on google groups, I
>had the same problem ;) )
>> 
>> This seems to be a legitimate bug in the __repr__ to me - SO informs
>me that DRF is correct in not defining a Content-Type for a 204 as it
>has no body:
>https://stackoverflow.com/questions/21029351/what-content-type-should-a-204-no-response-use
><https://stackoverflow.com/questions/21029351/what-content-type-should-a-204-no-response-use>
>> 
>> I created a ticket: https://code.djangoproject.com/ticket/27640
><https://code.djangoproject.com/ticket/27640> . If you want to try fix
>it there's a great contribution guide at
>https://docs.djangoproject.com/en/dev/internals/contributing/
><https://docs.djangoproject.com/en/dev/internals/contributing/> . I
>think using str.format would be acceptable, but the dict subclass
>sounds more complicated than just doing self.get('Content-Type', '') :)
>> 
>> On 26 December 2016 at 05:57, GMail <robosl...@gmail.com
><mailto:robosl...@gmail.com>> wrote:
>> Hi! I'm using Django 1.10.2 and Django-Rest-Framework 3.5.3.
>> I noticed, that HttpRequest.__repr__ method relies on 'Content-Type'
>header:
>> 
>> 
>> > class HttpResponse(HttpResponseBase):
>> >     ...
>> >
>> >     def __repr__(self):
>> >         return '<%(cls)s status_code=%(status_code)d,
>"%(content_type)s">' % {
>> >             'cls': self.__class__.__name__,
>> >             'status_code': self.status_code,
>> >             'content_type': self['Content-Type'],
>> >         }
>> 
>> 
>> And after deleting an object in DRF sends empty response with HTTP204
>and no 'Content-Type' header. I was trying to log outgoing response and
>got KeyError here.
>> 
>> So I have two questions:
>> 1. Is this intentional? Do all responses in Django have
>'Content-Type' header and should DRF be aware of it?
>> 2. Why not use `str.format` here? To avoid errors like this, `dict`
>subclass with `__missing__` method could be used.
>> 
>> --
>> You received this message because you are subscribed to the Google
>Groups "Django developers  (Contributions to Django itself)" group.
>> To unsubscribe from this group and stop receiving emails from it,
>send an email to django-developers+unsubscr...@googlegroups.com
><mailto:django-developers%2bunsubscr...@googlegroups.com>.
>> To post to this group, send email to
>django-developers@googlegroups.com
><mailto:django-developers@googlegroups.com>.
>> Visit this group at https://groups.google.com/group/django-developers
><https://groups.google.com/group/django-developers>.
>> To view this discussion on the web visit
>https://groups.google.com/d/msgid/django-developers/39F85D40-019C-411A-BCA7-402E338EA527%40gmail.com
><https://groups.google.com/d/msgid/django-developers/39F85D40-019C-411A-BCA7-402E338EA527%40gmail.com>.
>> For more options, visit https://groups.google.com/d/optout
><https://groups.google.com/d/optout>.
>> 
>> 
>> 
>> -- 
>> Adam
>> 
>> -- 
>> You received this message because you are subscribed to the Google
>Groups "Django developers (Contributions to Django itself)" group.
>> To unsubscribe from this group and stop receiving emails from it,
>send an email to django-developers+unsubscr...@googlegroups.com
><mailto:django-developers+unsubscr...@googlegroups.com>.
>> To post to this group, send email to
>django-developers@googlegroups.com
><mailto:django-developers@googlegroups.com>.
>> Visit this group at https://groups.google.com/group/django-developers
><https://groups.google.com/group/django-developers>.
>> To view this discussion on the web visit
>https://groups.google.com/d/msgid/django-developers/CAMyDDM39qZj7fV-MvPX%2BtXvSNL9%2B80283Aa5P47uBh3D46Q8BQ%40mail.gmail.com
><https://groups.google.com/d/msgid/django-developers/CAMyDDM39qZj7fV-MvPX%2BtXvSNL9%2B80283Aa5P47uBh3D46Q8BQ%40mail.gmail.com?utm_medium=email&utm_source=footer>.
>> For more options, visit https://groups.google.com/d/optout
><https://groups.google.com/d/optout>.
>
>-- 
>You received this message because you are subscribed to the Google
>Groups "Django developers  (Contributions to Django itself)" group.
>To unsubscribe from this group and stop receiving emails from it, send
>an email to django-developers+unsubscr...@googlegroups.com.
>To post to this group, send email to
>django-developers@googlegroups.com.
>Visit this group at https://groups.google.com/group/django-developers.
>To view this discussion on the web visit
>https://groups.google.com/d/msgid/django-developers/9945723B-03A2-4B4B-B51C-1F1E737C6FC5%40gmail.com.
>For more options, visit https://groups.google.com/d/optout.

-- 
Sent from my Android device with K-9 Mail. Please excuse my brevity.

-- 
You received this message because you are subscribed to the Google Groups 
"Django developers  (Contributions to Django itself)" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-developers+unsubscr...@googlegroups.com.
To post to this group, send email to django-developers@googlegroups.com.
Visit this group at https://groups.google.com/group/django-developers.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-developers/FE500D5F-F41E-479A-A99E-331515DD7E18%40tinbrain.net.
For more options, visit https://groups.google.com/d/optout.

Reply via email to