2016-07-13 5 views
2

に生のリクエストヘッダを取得します(Elastic Beanstalkで上にホストされているが?)ジャンゴフル未処理のHTTPリクエストヘッダを取得する方法ありますジャンゴ

私は、特定のヘッダーの順序を分析できるようにしたいと思います残念ながらHttpRequest.METAは私の使用例では十分ではありません。

+0

これは役に立ちます - > https://docs.djangoproject.com/es/1.9/topics/http/middleware/#process-request – Gocht

+0

ありがとう@Gocht、残念ながら 'process_request'が' HttpRequest'を取得するまでには、 'HttpRequest.META'は既にdictに変換されており、注文情報を失っています。 – bear

+0

注文はなぜ重要ですか? – e4c5

答えて

3

いいえ - あなたはDjangoレベルでこれを行うことはできません。 HttpRequest.METAの内容はobtained directly from the WSGI handlerです。このオブジェクトの構造は、WSGI specificationで定義されています。

リクエストヘッダは、Djangoはどこでも近くになっても前dictある - あなたのWSGIハンドラは(uwsgi/gunicorn/weurkzeug開発中)のヘッダを解析するものであり、あなたのDjangoアプリケーションへdictを渡します。 Djangoは元の生のリクエストヘッダを知らない。

生のリクエストを取得する唯一の場所は、Webサーバー(Nginx/Apacheなど)のレベルです。私はあなたがNginxでこれらを記録できることを知っています - あなたは相当量のデータを記録していますが。

+0

これは、しばらくソースを突き止めた後の印象ですが、Djangoには何らかの方法があることを期待していました。 – bear

関連する問題