Autant que je sache, ils sont absolument égaux. Cependant, en parcourant certains documents django, j'ai trouvé ce morceau de code:
HttpResponse.__init__(content='', mimetype=None, status=200, content_type='text/html')
ce qui me surprend que les deux s'entendent. La documentation officielle a pu résoudre le problème de manière pratique:
content_type est un alias pour mimetype. Historiquement, ce paramètre s'appelait uniquement mimetype, mais comme il s'agit en fait de la valeur incluse dans l'en-tête HTTP Content-Type, il peut également inclure le codage du jeu de caractères, ce qui en fait plus qu'une simple spécification de type MIME. Si le type MIME est spécifié (et non None), cette valeur est utilisée. Sinon, content_type est utilisé. Si ni l'un ni l'autre n'est indiqué, le paramètre DEFAULT_CONTENT_TYPE est utilisé.
Cependant, je ne trouve pas cela suffisamment élucidant. Pourquoi utilisons-nous 2 noms différents pour (presque la même) chose? "Content-Type" est-il juste un nom utilisé dans les requêtes du navigateur, et avec très peu d'utilité en dehors?
Quelle est la principale différence entre chacun et quand est-il juste d'appeler quelque chose mimetype
par opposition à content-type
? Suis-je pitoyable et nazi de grammaire?