如何在gulp中通过管道下载和解压缩文件?
我正试图通过使用下载和解压压缩文件。但是有一个错误。我的吞咽任务如下所示:如何在gulp中通过管道下载和解压缩文件?,gulp,unzip,Gulp,Unzip,我正试图通过使用下载和解压压缩文件。但是有一个错误。我的吞咽任务如下所示: var request = require('request'); var decompress = require('gulp-decompress'); gulp.task('unzip', function () { request('http://my-server-url/files/report.zip') .pipe(decompress()) .pipe('./upload
var request = require('request');
var decompress = require('gulp-decompress');
gulp.task('unzip', function () {
request('http://my-server-url/files/report.zip')
.pipe(decompress())
.pipe('./uploads')
});
执行gulp
后,我得到以下错误:
node_modules\gulp-decompress\index.js:11
if (file.isNull()) {
^
TypeError: file.isNull is not a function
我按要求试了一下,得到了和你一样的错误。它可能必须先转换成可读或可写的流(fs),然后才能继续在管道中运行,如果不花费太多时间,我就无法开始工作
所以,让我推荐一种比请求更简单的方法
这很简单。我相信其他人可以告诉您如何让模块请求在必要时工作。您确定您正在通过request()调用进入管道吗?例如,你可以用大口水龙头检查。@马克,你能举个例子吗?
const gulp = require('gulp');
const download = require("gulp-download");
const decompress = require('gulp-decompress');
const url = 'http://my-server-url/files/report.zip';
gulp.task('unzip', function () {
download(url)
.pipe(decompress())
.pipe(gulp.dest("unzipped"));
});