node.js---响应html数据、图片数据等给客户端
响应html数据、图片数据等给客户端
- Content-type的相应类型查询:https://tool.oschina.net/commons
- 文件读取中,data默认是二进制数据,可以通过 .toString 转为咱们能识别的字符串
- 相应数据res.end()支持两种数据类型,一种是二进制,一种是字符串
- 一般字符数据才指定编码
1 var http=require('http') 2 var fs=require('fs') 3 4 var server=http.createServer() 5 6 server.on('request',function(req,res){ 7 8 var url=req.url 9 switch(url){ 10 case "/": 11 fs.readFile('./resource/index.html',function(err,data){ 12 if(err){ 13 res.setHeader('Content-type','text/plain;charset=utf-8') 14 res.end('文件读取失败,请骚后重试!') 15 }else{ 16 res.setHeader('Content-type','text/html;charset=utf-8') 17 res.end(data) 18 } 19 }) 20 break; 21 case "/hulu": 22 fs.readFile('./resource/葫芦.jpg',function(err,data){ 23 if(err){ 24 res.setHeader('Content-type','text/plain;charset=utf-8') 25 res.end('文件读取失败,请骚后重试!') 26 }else{ 27 res.setHeader('Content-type','image/jpeg') 28 res.end(data) 29 } 30 }) 31 break; 32 default: 33 break; 34 } 35 }) 36 37 server.listen(80,function(){ 38 console.log('Server is running...') 39 })
index.html
1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta charset="utf-8"> 5 <title>Document</title> 6 </head> 7 <body> 8 <h1>首页</h1> 9 <h2>hello<h2> 10 </body> 11 </html>
运行结果1:

运行结果2:


浙公网安备 33010602011771号