在django

时间:2016-07-13 21:15:00

标签: django apache python-3.x nginx

有没有办法在django中获取完整的未处理的HTTP请求标头(托管在弹性beanstalk上?)

我希望能够特别分析标题的顺序,所以不幸的是HttpRequest.META不足以满足我的用例。

1 个答案:

答案 0 :(得分:5)

不 - 你不能在Django级别这样做。 HttpRequest.META的内容为obtained directly from the WSGI handler。该对象的结构在WSGI specification中定义。

即使在Django到达它们附近之前,请求标头也是dict - 您的WSGI处理程序(开发中的uwsgi / gunicorn / weurkzeug)解析标头并将dict传递给您的Django应用程序。 Django不知道原始的,原始的请求标题。

获取原始请求的唯一地方是Web服务器(Nginx / Apache等)级别。我知道您可以使用Nginx记录这些内容 - 尽管您将记录大量数据。