nodejs 简单的备份github代码初版

传送门:http://www.jianshu.com/p/002efed0d3af 

我的代码:

const https = require('https');
const fs = require("fs");
const path = require("path");
const username = 'dragon8github';
const download_list = ['linux-999'];
const src = __dirname + "/src/";
const ext =  ".zip";

fs.exists(src, function (exists) {
    if (!exists) {
        fs.mkdir(src, function (err) {
            if (err) throw new Error("创建src文件夹失败,请提升脚本的权限");
            console.log("检测到不存在src文件夹,已自动创建");
        })
    }
})

for (let [index, filename] of download_list.entries()) {
    var req = https.request(`https://codeload.github.com/${username}/${filename}/zip/master`, function (res) {
         var fileBuff = [];
         res.on('data', function (chunk) { 
            var buffer = new Buffer(chunk);
            fileBuff.push(buffer);
         }); 
         res.on('end', function () {
            var totalBuff = Buffer.concat(fileBuff);
            fs.appendFile(src + filename + ext, totalBuff, function(err){
                if (err) throw new Error(filename + ": 下载出错");
                console.log(filename + ": 下载完成");
            });
         });
    });
    req.on('error', function(e) { 
        console.log('problem with request: ' + e.message); 
    });     
    req.end();
}

原文地址:https://www.cnblogs.com/CyLee/p/7597693.html