你一定會收藏的Nodejs代碼片段
更新時間:2016年02月04日 10:06:00 投稿:lijiao
Nodejs值得收集的代碼片段,大家可以收藏起來,運用到之后的工作中,感興趣的小伙伴們可以參考一下
以下就是為大家分享的四段Nodejs值得收集的代碼片段,供大家參考,具體內容如下
1、關于Nodejs的靜態(tài)資源壓縮與緩存參見:Nodejs打造靜態(tài)資源服務器與文件上傳剛學Express那會,動態(tài)文件的gzip壓縮,好長一段時間都沒找到合適的方法,才發(fā)現就是這么簡單……
app.js里添加compression模塊:
先安裝;var compress=require('compression');app.use(compress()); OK了動態(tài)文件也能gzip壓縮了;
2、抓取妹子的圖片:
//依賴模塊
var fs = require('fs');
var request = require("request");
var cheerio = require("cheerio");
var mkdirp = require('mkdirp');
//目標網址
var url = 'http://me2-sex.lofter.com/tag/美女攝影?page=';
//本地存儲目錄
var dir = './images';
//創(chuàng)建目錄
mkdirp(dir, function(err) {
if(err){
console.log(err);
}
});
//發(fā)送請求
request(url, function(error, response, body) {
if(!error && response.statusCode == 200) {
var $ = cheerio.load(body);
$('.img img').each(function() {
var src = $(this).attr('src');
console.log('正在下載' + src);
download(src, dir, Math.floor(Math.random()*100000) + src.substr(-4,4));
console.log('下載完成');
});
}
});
//下載方法
var download = function(url, dir, filename){
request.head(url, function(err, res, body){
request(url).pipe(fs.createWriteStream(dir + "/" + filename));
});
};
3、解壓文件
var fs = require('fs'),
unzip = require('unzip');
//fs.createReadStream('./angular-swipe-master.zip').pipe(unzip.Extract({ path: './' }));
var extract = 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、壓縮文件
var fs = require("fs");
var zip = require("node-native-zip");
var archive = new zip();
archive.addFiles([
{ name: "app.j", path: "./app.js" },
{ name: "package.json", path: "./package.json" }
], function (err) {
if (err) return console.log(err);
var buff = archive.toBuffer();
fs.writeFile("./test2.zip", buff, function () {
console.log("ziped");
});
});
以上就是本文的全部內容,希望對大家的學習有所幫助,在新的一年里我們共同進步!

