ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、视频、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
~~~//当前项目(包)的入口文件 //1.加载http模块 var http =require('http'); var fs=require('fs'); var path=require('path'); var mime=require('mime'); //2.创建http服务 http.createServer(function(req,res){ //设计路由 //当用户请求 / 或者 /index的时候,显示新闻列表---get请求 //当用户请求 /item的时候,显示新闻详情---get请求 //当用户请求 /submit的时候,显示添加新闻页面---get请求 //当用户请求 /add时,将用户提交的新闻保存到data.json文件中---get请求 //当用户请求 /add时,将用户提交的新闻保存到data.json文件中---post请求 //将用户请求的url和method转换为小写字母 req.url=req.url.toLowerCase(); req.method=req.method.toLowerCase(); //根据用户请求的路径,将对应的html页面显示出来 if(req.url==='/'||req.url==='/index'&&req.method==='get'){ //读取index.html 并返回 fs.readFile(path.join(__dirname,'views','index.html'),function(err,data){ if(err){ throw err; } res.end(data); }) }else if(req.url==='/item'&&req.method==='get'){ //读取detail.html并返回 fs.readFile(path.join(__dirname,'views','detail.html'),function(err,data){ if(err){ throw err; } res.end(data); }) }else if(req.url==='/submit'&&req.method==='get'){ //读取submit.html并返回 fs.readFile(path.join(__dirname,'views','submit.html'),function(err,data){ if(err){ throw err; } res.end(data); }) }else if(req.url==='/add'&&req.method==='get'){ //表示get方法提交一条新闻 }else if(req.url==='/add'&&req.method==='post'){ //表示post方法提交一条新闻 }else if(req.url.startsWith('/resources')&&req.method==='get'){ //如果用户请求是以/resources开头,并且是get请求,就认为用户是要请求静态资源 fs.readFile(path.join(__dirname,req.url),function(err,data){ if(err){ res.writeHead(404,'Not Found',{'Content-Type':'text/html;charset=utf-8'}); res.end("404,page not found."); return; } res.setHeader("Content-Type",mime.getType(req.url)); res.end(data); }) } else{ res.writeHead(404,'Not Found',{ 'Content-Type':'text/html;charset=utf-8' }); res.end("404,page not found."); } }).listen(8888,function(){ console.log("http://localhost:8888"); }) ~~~