server.js代码:

var http=require('http');
var fs=require('fs');

var server=http.createServer(function(req,resp){
    getTitles(resp);   
});

server.listen(3000,function(){
    console.log('Server is listenning on port 3000.');
});

function getTitles(resp){
    fs.readFile('./titles.json',function(err,data){
        if(err){
            return hadError(err,resp);
        }else{
            getTemplate(JSON.parse(data.toString()),resp);
        }
    });
}

function hadError(err,resp){
    console.error(err);
    resp.end('Server error:'+err);
}

function getTemplate(titles,resp){
    fs.readFile('./template.html',function(err,data){
        if(err){
            return hadError(err,resp);
        }else{
            formatHtml(titles,data.toString(),resp);
        }
    });
}

function formatHtml(titles,tmpl,resp){
    var html=tmpl.replace("%",titles.join('</li><li>'));
    resp.writeHead(200,{'Content-Type':'text/html'});
    resp.end(html);
}

效果:

Node.js 替换文档内容

代码下载:

 https://files.cnblogs.com/files/xiandedanteng/nodejsReplaceHtml.rar

相关文章: