为什么Django将请求头更改为大写?
我只是想知道为什么django将请求头更改为大写为什么Django将请求头更改为大写?,django,django-views,Django,Django Views,我只是想知道为什么django将请求头更改为大写 例子: 我发送标题 "User-Agent" : "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2840.71 Safari/537.36" , 在后端django将其更改为 HTTP_USER_AGENT : Mozilla/5.0 (Windows NT 10.
例子: 我发送标题
"User-Agent" : "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2840.71 Safari/537.36" ,
在后端django将其更改为
HTTP_USER_AGENT : Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2840.71 Safari/537.36
这个需要什么?
任何有帮助的建议都将不胜感激。
request.META
是一个字典,包含django的常量作为键,而不是HTTP头名称
我是:
除上文所述的内容长度和内容类型之外,
请求中的任何HTTP头都由
将所有字符转换为大写,将任何连字符替换为
在名称中加下划线并添加一个HTTP.前缀。例如,一个
名为X-Bender的标题将映射到META键HTTP\u X\u Bender
request.META
是一个字典,包含django常量作为键,而不是HTTP头名称
我是:
除上文所述的内容长度和内容类型之外,
请求中的任何HTTP头都由
将所有字符转换为大写,将任何连字符替换为
在名称中加下划线并添加一个HTTP.前缀。例如,一个
名为X-Bender的标题将映射到META键HTTP\u X\u Bender
,HTTP头将转换为大写,连字符将转换为下划线,并添加HTTP\uu
前缀。这意味着您可以在代码中使用request.META['HTTP\u USER\u AGENT']
,无论请求使用的是USER-AGENT
、USER-AGENT
,还是其他内容。
,HTTP头将转换为大写,连字符将转换为下划线,并添加
HTTP\uu
前缀。这意味着您可以在代码中使用request.META['HTTP\u USER\u AGENT']
,无论请求是否使用USER-AGENT
,USER-AGENT
,或者别的什么。如何捕获这些头?如何捕获这些头?我之所以编辑这个问题,是因为它的pycharm终端错误。值得注意的是,这是由CGI规范(以及扩展到WSGI规范)定义的,Django本身实际上并不转换任何头request.META
实际上只是一个问题。我之所以编辑这个问题,是因为它的pycharm终端错误。值得注意的是,这是由CGI规范(以及WSGI规范的扩展)定义的,Django本身实际上并不转换任何头request.META实际上只是一个。