2015-04-01 31 views
0

我是新來的節點,並堆棧溢出,所以只有當你耐心回答。我將目前存在於兩個不同的小節點應用程序中的代碼整合起來非常困難。我很難相信我的第一人這個問題,但我還沒有發現類似的問題或例子(e.g. This similar question is only theoretical)如何在node/express和Backbone中混合使用混合(服務器端和客戶端渲染)?

我有什麼:

  • 應用#1實現了一個工作,使用node,express,passportjs的基本登錄牆,所有路由都通過ejs視圖傳給客戶端res.render(),它有/login,/signup,,/home這樣的路由,效果很好,當用戶登錄或註冊時,/home路由爲他們提供一個ejs,節點呈現的主頁,顯示他們的信息。
  • App#2,也是節點,作爲一個模擬,從數據庫中抓取一個隨機用戶併爲該用戶工作的骨幹應用程序。它使用app.use(express.static(__dirname + "/../public"))爲骨幹網服務,以及一些將json發送到骨幹客戶端的路由。它工作正常,但只有一個隨機的用戶ID。

我想要什麼:在應用#1中,我想要一條路線,如'home:uid'爲具有該用戶的用戶呈現骨幹應用。但是我想這樣做,而不用剔除我服務器端渲染視圖的可愛/login/signup路由。

最後我的問題:我如何纔能有流量節點路由切換,登錄後,從服務器端渲染視圖到骨幹?我如何讓用戶標識(在req對象中)可用於我要發送給客戶端的骨幹應用程序?我是否可以將公共目錄與用戶標識捆綁在一起,並僅在/home:uid請求中發送該捆綁包?

事情我已經嘗試過,並可以使用更多的方向:

  1. 我可以用app.use(express.static(__dirname + "/../public"), {index: false})似乎是有用的,但我想如何表達用戶與靜態指標設置爲false的例子。
  2. res.sendFile()。這是使用靜態文件進行響應的標準方式。骨幹應用程序文件除了用戶標識以外都是靜態的。我不知道如何處理。

感謝您的耐心等待&幫助。

回答

0

This post by Airbnb好像說混合客戶端和服務器端渲染節點是前沿;節點未設置爲在一個應用程序中從在後端模板化的服務文件切換到在前端上呈現的服務靜態文件。

相關問題