2015-12-30 81 views
3

我正在開發一個web應用程序,我使用this starter kit作爲我的項目的基礎。問題在於cookie在服務器端不可用,所以我無法使用它來渲染服務器中的組件。在服務器端渲染時使用cookie的ReactJS

我用react-cookie登錄

cookie.save('account', accountData)

後,帳戶數據保存和檢索

var account = cookie.load('account')

,當我需要它。我發現cookie被保存在瀏覽器中,我可以在組件加載後在客戶端使用它,但我需要它在服務器端進行預渲染操作。

所以問題是如何實現這一目標?或者,如果cookie不是正確的方法,那麼最好的辦法是什麼?

回答

3

您使用的是cookie-parser中間件嗎?從react-cookie文檔:

您也可以直接使用Node.js的要求僅由renderToString前加入插:

reactCookie.plugToRequest(req, res);

(需要cookieParser中間件)

除非您在您的Ex上安裝並啓用了一些Cookie解析中間件,否則Express不會解析請求以取出Cookie新聞應用。