1

アーカイブされた生の HTTP リクエスト (つまり、GET リクエストとクライアント HTTP ヘッダーを含む文字列) でいっぱいのログ ファイルがあります。

生のリクエストを処理するために再利用したい既存の Django ビューがいくつかあります (そのため、ビューに既に実装されている副作用の一部を利用できます)。私の計画は、これらのアーカイブされたリクエストを celery タスクで定期的に処理することです。

Djangoviewが機能するには、リクエストのヘッダーと Cookie にアクセスできる必要があります。HTTP Requestこの生データから Django オブジェクトを再構築する正しい方法は何ですか?

サンプルデータ:

GET /log/?pk=1e455a1038e HTTP/1.1
Host: 127.0.0.1:8080
Cache-Control: max-age=0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_8_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/30.0.1599.69 Safari/537.36
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8
Cookie: fc=fcVal=68335707752227284;
4

1 に答える 1

0

2 つの明白な解決策があります。

1/ 独自の HttpRequest サブクラスと独自のハンドラー (cfdjango.http.requestおよびdjango.core.handlers) または

2/ ログを解析し、HTTP リクエストを django インスタンスに送信するスクリプトを作成します。

于 2013-10-08T08:06:50.303 に答える