Pelo que eu sei, eles são absolutamente iguais. No entanto, navegando em alguns documentos do django, encontrei este código:
HttpResponse.__init__(content='', mimetype=None, status=200, content_type='text/html')
o que me surpreende os dois se dando bem. Os documentos oficiais conseguiram resolver o problema de forma prática:
content_type é um alias para mimetype. Historicamente, esse parâmetro era chamado apenas de tipo MIME, mas como esse é realmente o valor incluído no cabeçalho HTTP Content-Type, ele também pode incluir a codificação do conjunto de caracteres, o que o torna mais do que apenas uma especificação de tipo MIME. Se mimetype for especificado (não nenhum), esse valor será usado. Caso contrário, content_type é usado. Se nenhum for fornecido, a configuração DEFAULT_CONTENT_TYPE será usada.
No entanto, não acho isso elucidativo o suficiente. Por que usamos 2 nomes diferentes para (quase a mesma) coisa? "Content-Type" é apenas um nome usado em solicitações de navegador e com muito pouco uso fora dele?
Qual é a principal diferença entre cada um e quando é certo chamar algo mimetype
em vez de content-type
? Estou sendo lamentável e nazista da gramática?