1 var gulp=require('gulp'); 2 var webserver=require('gulp-webserver'); 3 //url,node提供對URL信息的讀取和設置的插件 4 var url=require('url'); 5 //fs node文件管理模塊 6 var fs=require('fs'); 7 gulp.task('webserver',function(){ 8 gulp.src('./')//獲得根路徑 9 .pipe(webserver({ 10 //實時刷新 11 livereload:true, 12 port:80, 13 host:'localhost', 14 //訪問的路徑是否顯示 15 directoryListing:{ 16 enable:true, 17 path:'./'//從哪一個目錄下開始啓動 18 }, 19 //對請求進行攔截 20 middleware:function(req,res,next){ 21 //req:發送的請求 22 //res:須要接受響應的對象 23 //next:指向下一步操做的指針 24 var urlObj=url.parse(req.url,true); 25 console.log(urlObj.pathname); 26 if(urlObj.pathname=='/data/json.json'){ 27 //設置響應頭 28 res.setHeader('Content-Type','application/json'); 29 //讀取文件 30 fs.readFile('json/data.json','utf-8',function(err,data){ 31 //將文件的數據設置爲響應的數據 32 res.end(data); 33 }); 34 return; 35 } 36 //放網頁繼續進行 37 next(); 38 } 39 })) 40 41 }); 42 gulp.task('copy-file',function(){ 43 gulp.src('dist/index.html').pipe(gulp.dest('src')); 44 }); 45 gulp.task('watch',function(){ 46 gulp.watch('dist/index.html',['copy-file']); 47 }); 48 gulp.task('default',['webserver','watch']);