Nodejs 访问不同的目录展现不同的页面
🌙
手机阅读
本文目录结构
用 nodejs 模拟服务器和前端网页;首先看下 request.url 里面是什么;
var http=require("http");
var url=require("url");
var fs=require("fs");
http.createServer(function(request,response ){
var urlObj=url.parse(request.url,true);
response.end(JSON.stringify(urlObj));
}).listen(8088);
结果树下:
//rul输入的是:http://localhost:8088/abcd/e/g/zzzz.html?name=rose&age=22
/* {"protocol":null,"slashes":null,"auth":null,"host":null,"port":null,"hostname":null,"hash":null,"search":"?name=rose&age=22","query":{"name":"rose","age":"22"},"pathname":"/abcd/e/g/zzzz.html","path":"/abcd/e/g/zzzz.html?name=rose&age=22","href":"/abcd/e/g/zzzz.html?name=rose&age=22"}*/
通过访问不同的目录展现不同的页面;
基本思路如下:
var http=require("http");
var url=require("url");
var fs=require("fs");
http.createServer(function(request,response ){
var urlObj=url.parse(request.url,true);
//response.end(JSON.stringify(urlObj));
// urlObj.pathname;//访问路径;
// urlObj.query;//查询字符;
var pathname=urlObj.pathname;
var iReg=/^\/.+\$/;
if(pathname=="/"){
fs.createReadStream("./default.html").pipe(response);
} else if(iReg.test(pathname)){
try{
fs.createReadStream("."+pathname+"default.html")
}catch (e){
response.writeHead(404);
response.end("error 404,nod found this find")
}
}else{
response.writeHead(404);
response.end("error 404,nod found this find")
}
}).listen(8088);