如何从Django Headers获取数据?

Jus*_*ill 2 python django django-views django-rest-framework

我面临着从Django Headers获取数据的问题.

我的API使用CURL: -

curl -X POST \
  https://xyx.com \
  -H 'Cache-Control: no-cache' \
  -H 'Content-Type: application/json' \
  -H 'xyzId: 3223' \
  -H 'abcData: ABC-123' \
  -d '{
  "name": "xyz",
  "dob": "xyz",
  "user_info": "xyz",
}'
Run Code Online (Sandbox Code Playgroud)

在我的API中我需要得到xyzIdabcData

我试过request.META['abcData']但得到了错误KeyError.

如何在我的视图中获取两个数据?

请帮我解决这个问题.

提前致谢.

Sar*_*iev 7

根据文件说https://docs.djangoproject.com/en/2.0/ref/request-response/#django.http.HttpRequest.META

除了上面给出的CONTENT_LENGTH和CONTENT_TYPE之外,请求中的任何HTTP头都将转换为META密钥,方法是将所有字符转换为大写,用下划线替换任何连字符,并在名称中添加HTTP_前缀.因此,例如,名为X-Bender的标头将映射到META密钥HTTP_X_BENDER.

所以你应该能够像这样访问你的标题

request.META['HTTP_ABCDATA']
Run Code Online (Sandbox Code Playgroud)