你一定会收藏的Nodejs代码片段
以下就是为大家分享的四段Nodejs值得收集的代码片段,供大家参考,具体内容如下
1、关于Nodejs的静态资源压缩与缓存参见:Nodejs打造静态资源服务器与文件上传刚学Express那会,动态文件的gzip压缩,好长一段时间都没找到合适的方法,才发现就是这么简单……
app.js里添加compression模块:
先安装;varcompress=require('compression');app.use(compress());OK了动态文件也能gzip压缩了;
2、抓取妹子的图片:
//依赖模块
varfs=require('fs');
varrequest=require("request");
varcheerio=require("cheerio");
varmkdirp=require('mkdirp');
//目标网址
varurl='http://me2-sex.lofter.com/tag/美女摄影?page=';
//本地存储目录
vardir='./images';
//创建目录
mkdirp(dir,function(err){
if(err){
console.log(err);
}
});
//发送请求
request(url,function(error,response,body){
if(!error&&response.statusCode==200){
var$=cheerio.load(body);
$('.imgimg').each(function(){
varsrc=$(this).attr('src');
console.log('正在下载'+src);
download(src,dir,Math.floor(Math.random()*100000)+src.substr(-4,4));
console.log('下载完成');
});
}
});
//下载方法
vardownload=function(url,dir,filename){
request.head(url,function(err,res,body){
request(url).pipe(fs.createWriteStream(dir+"/"+filename));
});
};
3、解压文件
varfs=require('fs'),
unzip=require('unzip');
//fs.createReadStream('./angular-swipe-master.zip').pipe(unzip.Extract({path:'./'}));
varextract=unzip.Extract({path:'./'});
extract.on('error',function(err){
console.log(err);
});
extract.on('finish',function(){
console.log("unziped!!");
});
fs.createReadStream('./angular-swipe-master.zip').pipe(extract);
4、压缩文件
varfs=require("fs");
varzip=require("node-native-zip");
vararchive=newzip();
archive.addFiles([
{name:"app.j",path:"./app.js"},
{name:"package.json",path:"./package.json"}
],function(err){
if(err)returnconsole.log(err);
varbuff=archive.toBuffer();
fs.writeFile("./test2.zip",buff,function(){
console.log("ziped");
});
});
以上就是本文的全部内容,希望对大家的学习有所帮助,在新的一年里我们共同进步!