Django将所有http header(包括你自定义的http header)都放在了HttpRequest.META这个Python标准字典中,当然HttpRequest.META

中还包含其它一些键值对,这些键值对是Django加进去的,如SERVER_PORT等。对于http header,Django进行了重命名,规则如下

(1) 所有header名大写,将连接符“-”改为下划线“_”

(2) 除CONTENT_TYPE和CONTENT_LENGTH,其它的header名称前加“HTTP_”前缀,同时需要将 'Content-Type'改为

CONTENT_TYPE

参见 https://docs.djangoproject/en/1.6/ref/request-response/#django.http.HttpRequest.META

更多推荐

Django接收自定义http header(转)KeyError: 'Content-Type'