2012-03-17 65 views
6

我正在用MongoDB數據庫在Node.js中開發一個小應用,前面有nginx處理靜態文件和初始index.html。通過WebSocket連接發送HTML是不好的做法

當我訪問我的index.html文件時,所有的javascript/css/img文件都被加載,並且web服務器連接到node.js服務器。

最初我的index.html是空的,它需要填寫正確的模板文件。我能做的一件事就是做一個正常的ajax req。

$ .get('myfile.html')並將其附加到我的內容。 websocket只處理數據庫數據。


現在我已經有一個開放的WebSocket連接服務器,爲什麼不讓我轉讓的.html模板與數據庫中的數據,並會在客戶端合併。

模板文件只是很少的html片段,爲什麼浪費一個HTTP請求,對嗎?


請注意,這個應用程序將只被有選擇的人使用,具有完整的html5瀏覽器支持。不需要回退的情況。

+0

你有沒有試過[Backbone.js](http://documentcloud.github.com/backbone/)? – cormacrelf 2012-03-17 10:25:30

+0

是的,但我沒有得到同步功能的工作。網上有一些例子,但他們只是看我的需求複雜。我已經有了大部分邏輯,我只想知道WebSocket是否可以用於html。 – 2012-03-17 10:59:28

回答

5

鑑於HTTP非常適合提供文件,緩存(可能包含多個層),因此您甚至不必爲訪問者多次發送任何html內容,我絕對認爲上漲超過了負面影響。聽起來您可以發送index.html以及相關內容,並在您的index.html中使用模板(例如,在jQuery templates中可以使用<script id="fooTemplate" type="text/x-jquery-tmpl">標記)。

顯然你可以通過WebSocket發送模板。

+0

感謝您的回答,那正是我想要做的。我甚至已經使用jQuery模板,它工作得很好。大! – 2012-03-17 13:33:02

相關問題