1----http
2----fs文件与文件夹的读取
3------readfile 服务器的读取文件
/*
传统动态网站开发(有数据交互的)
php apache+php模块
java weblogic
node不需要软件 通过一些模块实现。没有静态资源读取能力。
node适合聊天室,游戏 不太适合大型项目
*/
// 引入模块
const http=require('http');
// 创建服务器
let server=http.createServer((req,res)=>{
// 书写响应头,设置编码方式,要不会乱码
res.writeHead(200,{'Content-Type':'text/plain;charset=utf-8'});
// req request客户端发给服务器的内容
// res response服务器响应给客户端内容
// 向客户端发送内容
res.write('1111');
res.write('2222');
res.write('1111');
res.write('<h1>sdljflsjf</h1>')
// 响应内容给前台,终止客户端的响应,必须要有,如果没有,客户端无法结束响应
// 只能有一个,结束响应以后,后面对客户端的响应都不再执行
res.end('我的');
// res.end('我的111')
// console.log(111); 不是响应给客户端的,不会报错,会执行。
})
//监听端口号 端口号可以任意设置,只要不冲突
server.listen('8989')
2----fs文件与文件夹的读取
const path=require('path');
const fs=require('fs');
// 读文件夹
// fs.readdir(文件地址,成功以后的回调函数)
// fs.readdir(__dirname,(err,files)=>{
// })
// 写文件 fs.writeFile('文件名字',数据,(err)=>{成功以后的回调})
// fs.writeFile('my.txt','hello',(err)=>{
// if(err) throw err;
// })
// 删除文件 fs.unlink('文件名字',(err)=>{回调})
// fs.unlink('my.txt',(err)=>{
// if(err) throw err;
// })
// 读文件 fs.readFile(文件名字)
// fs.readFile('./01作业.html',(err,data)=>{
// if(err) throw err;
// // toString()把buffer转化为字符串
// console.log(data.toString());
// })
fs.readFile('./01.html','utf-8',(err,data)=>{
if(err) throw err;
console.log(data);
})
3------readfile 服务器的读取文件
const http=require('http');
const fs=require('fs');
const path=require('path');
let server=http.createServer((req,res)=>{
res.writeHead(200,{'Content-Type':'text/html;charset=utf-8'});
// 真正的输入的路径和所要读取的文件没有关系
// 读取文件
// fs.readFile(path.join(__dirname,'my.html'),(err,data)=>{
// // 把静态资源呈递给前端
// res.end(data);
// })
// res.end('只能放置字符串')
res.end('111');
// req.url代表的是用户输入的路由/路径 除了ip和端口号以外的地址
// favicon.ico自动请求 favicon.ico暂时不需要可以不用处理
if(req.url=='/favicon.ico') return;
// console.log(req.url);
// res.end('hello');
// 想要实现输入的路径和加载的文件一致。否则提示用户404
// if(req.url=='/my'){
// fs.readFile(path.join(__dirname,'my.html'),(err,data)=>{
// // 把静态资源呈递给前端
// res.end(data);
// })
// }else if(req.url=='/index'){
// fs.readFile(path.join(__dirname,'index.html'),(err,data)=>{
// // 把静态资源呈递给前端
// res.end(data);
// })
// }else{
// res.end('404')
// }
})
server.listen('8989');