Hasta donde yo sé, son absolutamente iguales. Sin embargo, al navegar por algunos documentos de django, encontré este fragmento de código:
HttpResponse.__init__(content='', mimetype=None, status=200, content_type='text/html')
lo que me sorprende que los dos se lleven bien. Los documentos oficiales pudieron resolver el problema de manera práctica:
content_type es un alias de mimetype. Históricamente, este parámetro solo se llamaba mimetype, pero dado que en realidad es el valor incluido en el encabezado HTTP Content-Type, también puede incluir la codificación del juego de caracteres, lo que lo convierte en algo más que una especificación de tipo MIME. Si se especifica mimetype (no None), se usa ese valor. De lo contrario, se utiliza content_type. Si no se proporciona ninguno, se utiliza la configuración DEFAULT_CONTENT_TYPE.
Sin embargo, no lo encuentro lo suficientemente esclarecedor. ¿Por qué usamos 2 nombres diferentes para (casi lo mismo) algo? ¿Es "Content-Type" solo un nombre que se usa en las solicitudes del navegador y con muy poco uso fuera de él?
¿Cuál es la principal diferencia entre cada uno y cuándo es correcto llamar a algo mimetype
en lugar de content-type
? ¿Estoy siendo lamentable y gramaticalmente nazi?