掌握url请求方式
var url=require(‘url’); var urlObj=url.parse(req.url,true);
var pathName=urlObj.pathname; var newMess=urlObj.query;
掌握重定向方式
res.stateCode=“302”; res.setHeader(‘Location’,’/’); res.end();
var fs=require('fs');
var http=require('http');
var template=require('art-template');
var url=require('url');
var mess=[
{
name:"zhangsan",
content:"哈哈哈",
timer:'2020-11-11 11:11:11'
},
{
name:"lisi",
content:"呵呵呵",
timer:'2020-11-11 11:11:11'
},
{
name:"wangwu",
content:"hiahia",
timer:'2020-11-11 11:11:11'
},
];
http.createServer(function(req,res){
// var url=req.url;
// if(url==="/"){
// fs.readFile('./view/index.html',function(err,data){
// if(err){
// return res.end("404");
// }
// res.end(data.toString());
// })
// }
var urlObj=url.parse(req.url,true);//地址,对象形式
//console.log(urlObj);//一个对象
var pathName=urlObj.pathname;
//console.log(pathName);
if(pathName==="/"){
fs.readFile('./view/index.html',function(err,data){
if(err){
return res.end("404");
}
data=data.toString();
var ret=template.render(data,{
mess:mess
})
res.end(ret);
})
}else if(pathName==="/post"){
fs.readFile('./view/post.html',function(err,data){
if(err){
return res.end("404");
}
res.end(data.toString());
})
}else if(pathName==="/pinglun"){
fs.readFile('./view/index.html',function(err,data){
if(err){
return res.end("404");
}
//console.log(urlObj);//发送过来的新的消息 里面有一个query对象
var newMess=urlObj.query;
newMess.timer=new Date().toLocaleString();
mess.unshift(newMess);//往数组前面添加信息
res.statusCode="302"; //状态码
res.setHeader('Location','/'); //重定向根目录
res.end(data.toString()); //显示响应完
})
}
}).listen(3000,function(){
console.log("running...");
})
{{each mess}}
<li class="list-group-item">{{$value.name}}:{{$value.content}} <span class="pull-right">{{$value.timer}}</span></li>
{{/each}}
<div class="header container">
<div class="page-header">
<h1><a href="/">首页</a> <small>发表评论</small></h1>
</div>
</div>
<div class="comments container">
<form action="/pinglun" method="get">
<div class="form-group">
<label for="input_name">你的大名</label>
<input type="text" class="form-control" required minlength="2" maxlength="10" id="input_name" name="name" placeholder="请写入你的姓名">
</div>
<div class="form-group">
<label for="textarea_message">留言内容</label>
<textarea class="form-control" name="content" id="textarea_message" cols="30" rows="10" required minlength="5" maxlength="20"></textarea>
</div>
<button type="submit" class="btn btn-default">发表</button>
</form>
</div>