通过WebSocket连接发送HTML是不好的做法

我正在使用MongoDB数据库在Node.js中开发一个小应用程序,前面有nginx来处理静态文件和最初的index.html。

当我访问我的index.html所有javascript / css / img文件被加载,并且一个websocket连接到node.js服务器。

最初我的index.html是空的,它需要填写正确的模板文件。 我能做的一件事就是做一个正常的Ajax请求。

$ .get('myfile.html')并将其附加到我的内容。 websocket只处理数据库数据。


现在我已经有了一个开放的websocket连接服务器,为什么不把这个.html模板和数据库中的数据一起传输,然后把它合并到客户端。

模板文件只是很less的HTML片段,为什么浪费一个HTTP请求,对吗?


请注意,这个应用程序将只有有select的人有完整的HTML5浏览器支持。 不需要回退的情况。

考虑到HTTP非常适合用于提供文件,caching(可能在多个层)为您工作,所以您甚至不需要向访问者多次发送任何html内容,但我绝对认为超过缺点。 这听起来像你可以发送一个index.html以及相关的内容,并在您的index.html模板(例如在jQuery模板 ,可以使用<script id="fooTemplate" type="text/x-jquery-tmpl">标签)。

显然你可以通过WebSocket发送模板。