2016-09-28 11 views
0

どのように変数をサブルーチンに渡すのですか?要求ごとにワニスで変数を渡す

私はdefault.vclを次ています

vcl 4.0; 

sub vcl_recv { 
    set req.http.x-tracking-first-request = "true"; 
} 


sub vcl_deliver { 

    if (resp.http.x-tracking-first-request) { 
     # do something 
    } 
} 

は現在、私は私のバックエンドでパラメータを処理する必要があり、すなわちresponse.add_header("x-tracking-first-request", response.get_header("x-tracking-first-request"))のようなものを。これは、すべてのクライアントがこの「反映」ロジックを実装しなければならないことを意味します。

なぜですか? Upponの最初のリクエスト後で別のユーザーを識別するためにuuidを生成したい。したがって、私はどうにかしてすべての要求/応答サイクルにわたってUUIDを保存する必要があります。

答えて

1

あなたは、単にvcl_deliver中にreqオブジェクトを使用する必要があります。

vcl 4.0; 

sub vcl_recv { 
    set req.http.x-tracking-first-request = "true"; 
} 

sub vcl_deliver { 
    if (req.http.x-tracking-first-request) { 
     # do something 
    } 
} 
+0

はどうもありがとうございました!私はヘッダー変数のタイプミスをしていたので、req-objectにアクセスできなかったようです。 – anopheles

関連する問題