2012-01-30 48 views
0

我有一個返回相同內容但根據 request.is_ajax()值不同的模板的URL。Django的:如何使用XMLHttpRequest緩存的關鍵

我該如何將它包含在緩存的關鍵參數中,所以我根據它緩存正確的響應?

我試着用'XMLHttpRequest'使用vary_on_headers裝飾器,但它沒有奏效。

任何想法?

回答

1

這是因爲vary_on_headers要求您指定要檢查的實際標題,而「XHMLHttpRequest」不是其中之一。 Django在中尋找這個HTTP_X_REQUESTED_WITH頭文件,所以這是你需要改變的。

+0

只是爲了明確其他人可能會使用此。您必須使用vary_on_headers('X_REQUESTED_WITH')而不是vary_on_headers('HTTP_X_REQUESTED_WITH'),因爲中間件已經爲其添加了'HTTP_' – duduklein 2012-02-01 11:37:23