如何使用Node.js构建静态和动态内容之间的混合页面?

我的5页面网站上的所有页面都应该使用Node.js服务器输出。

大多数页面内容是静态的。在每个页面的底部,有一些动态内容。

我的node.js代码当前看起来像:

var http = require('http'); 

http.createServer(function (request, response) {

    console.log('request starting...');

    response.writeHead(200, { 'Content-Type': 'text/html' });

    var html = '<!DOCTYPE html><html><head><title>My Title</title></head><body>';
    html += 'Some more static content';
    html += 'Some more static content';
    html += 'Some more static content';
    html += 'Some dynamic content';
    html += '</body></html>';

    response.end(html, 'utf-8');

}).listen(38316);

我确定这个例子有很多错误。请指教我!
例如:

>如何添加静态内容到
页面,而不将其作为变量值存储在字符串中=多次?
>在Node.js中构建一个小型网站的最佳实践方法是什么,其中所有网页都是静态和动态内容的混合体?

就个人而言,我会使用一个具有更高级别结构的服务器。例如,看看expressjs框架 – http://expressjs.com/

你从这个包中感兴趣的结构是:

>真正的静态文件(资产等):app.use(express.static(__ dirname’/ public’));
>模板语言,如玉,胡子等:

> http://expressjs.com/en/guide/using-template-engines.html
> https://github.com/visionmedia/jade/
>您将需要查找“本地化”和“部分”,以便在大多数静态内容中嵌入小部分动态内容

例如在玉:

!!! 5
html(lang="en")
  head
    title= pageTitle
    script(type='text/javascript')
      if (foo) {
         bar()
      }
  body
    h1 Jade - node template engine
    #container
      - if (youAreUsingJade)
        p You are amazing
      - else
        p Get on it!

成为:

<!DOCTYPE html>
<html lang="en">
  <head>
    <title>Jade</title>
    <script type="text/javascript">
      if (foo) {
        bar()
      }
    </script>
  </head>
  <body>
    <h1>Jade - node template engine</h1>
    <div id="container">
      <p>You are amazing</p>
    </div>
  </body>
</html>

如果你喜欢一点不太激烈,我会说看看胡子或其他引擎看起来有点像普通酱的html。

http://stackoverflow.com/questions/6126584/how-to-use-node-js-to-build-pages-that-are-a-mix-between-static-and-dynamic-cont

本站文章除注明转载外,均为本站原创或编译
转载请明显位置注明出处:如何使用Node.js构建静态和动态内容之间的混合页面?