2012-03-11 102 views
1

我正在使用jquery-cookie模塊從jquery設置/獲取cookie。有沒有辦法從jQuery訪問django請求會話cookie?

當我設置一個cookie - 它是一個會話cookie,我可以在Chrome的資源標籤中看到它。

另一方面,使用reqeust.session ['mycookie'] ='value'在Django中設置cookie也是一個會話cookie,但它在Chrome的資源選項卡中不可見。

有沒有辦法使用jQuery來訪問或設置Django會話cookie?

+0

感謝您的回答。說得通。 – 2012-03-12 10:12:22

回答

2

此:

在另一方面,使用request.session['mycookie'] = 'value'設置在Django一個cookie也是一個會話cookie

是不正確的。

會話是存儲在會話存儲中的對象,它通常是您的Django服務器上的數據庫表。它存儲單個會話密鑰的多個值。只有這個會話密鑰作爲cookie存在。這顯然具有安全性的雙重優勢,並且無需在每個請求上傳輸可能巨大的Cookie。

您可能能夠從jQuery訪問會話密鑰,但是如果不訪問服務器上的會話存儲,這對您沒有任何好處。

如果您確實需要這樣做,您可以使用response.set_cookie來設置來自Django的實際Cookie - 但請仔細考慮這樣做的安全性和性能影響。

相關問題