Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/shell/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
为什么Django将请求头更改为大写?_Django_Django Views - Fatal编程技术网

为什么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.

我只是想知道为什么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.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的标题将映射到METAHTTP\u X\u Bender


request.META
是一个字典,包含django常量作为键,而不是HTTP头名称

我是:

除上文所述的内容长度内容类型之外, 请求中的任何HTTP头都由 将所有字符转换为大写,将任何连字符替换为 在名称中加下划线并添加一个HTTP.前缀。例如,一个 名为X-Bender的标题将映射到METAHTTP\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实际上只是一个。