将HTML附加到Express中的路由

时间:2015-11-07 07:25:52

标签: javascript node.js express

我有一个基本的index.html文件,当浏览器请求路由文件将添加/附加一个html按钮到该文件但实际上不会写入该文件。这听起来很傻但我想要这样做,以便我可以为查看仪表板的某些用户动态添加“迷你应用程序”。

1 个答案:

答案 0 :(得分:0)

如果没有服务器上的实际动态代码,您将无法生成静态代码(这将在每个请求上解析html并在其中放置一个处理器上非常昂贵的按钮)。我建议您使用javascript来放置此按钮,因为您的问题不提供任何需要改进的代码。

如果您对模板持开放态度,这是您的幸运日。 ExpressJS非常支持模板: http://expressjs.com/guide/using-template-engines.html

或者,您可以放置​​标记,例如<%button here%>并使用.replace或RegEX替换该特定文件的缓冲区或字符串。

编辑:

最后一条建议的示例。此代码不完整,请不要在生产中使用此代码

app.get('/', function (req, res) {
  fs.readFile(path_to_file, { encoding: 'utf8' }, function(error, buffer){
      if(error) return res.status(404).end();
      res.send(buffer.replace('<% tag %>', "<div ...>"));
  });
});