nodejs_100個實例(2)
源碼來源:https://www.cnblogs.com/noper/p/6246993.html
一、本文目標:
1.使用express進行文件管理,將js代碼存放在/public/javasrcipts
express -e test
2.從后台讀取圖片展示在瀏覽器。圖片存放在/public/images
二、源碼(server.js+readImage.js)
1.server.js
1 var http = require("http"); 2 var readImage = require("./readImage"); 3 http.createServer(function(res, res){ 4 // res.writeHead(200, {"Content-Type":"text/html; charset=uf-8"}); 5 res.writeHead(200, {"Content-Type":"image/jpeg"}); 6 if (res.url!=="/favicon.ico") { 7 //res.write('hello,world');//不能向客戶端輸出任何字節,否則會影響圖片的輸出 8 readImage.readImage('../images/dog.jpg', res); //如果文件路徑存在則添加數據,如果不存在則新建文件並且添加數據 9 console.log("繼續執行"); 10 //res.end('end'); 在 readImage.readImage方法中已經寫過了 11 } 12 }).listen(8000); 13 console.log('Server running at http://127.0.0.1:8000/');
2.readImage.js
1 var fs= require('fs'); 2 module.exports={ 3 readImage:function(path,res){ 4 fs.readFile(path,'binary',function(err, file) { 5 if (err) { 6 console.log(err); 7 return; 8 }else{ 9 console.log("輸出文件"); 10 res.writeHead(200, {'Content-Type':'image/jpeg'}); 11 res.write(file,'binary'); 12 res.end(); 13 } 14 }); 15 } 16 };