Javascript 使用https下载文件的Grunt任务
我需要一个grunt任务来下载一个托管在https上的文件。请求将包含一些参数,例如:Javascript 使用https下载文件的Grunt任务,javascript,node.js,https,build,gruntjs,Javascript,Node.js,Https,Build,Gruntjs,我需要一个grunt任务来下载一个托管在https上的文件。请求将包含一些参数,例如: https://server.com/services/download?what=someFile&version=1 我尝试过使用,但得到的只是econnreference。我知道我使用的URL是正确的,因为我可以简单地将它粘贴到浏览器中,它就工作了 你将如何解决这个问题?我认为自己编写节点脚本,但它感觉像是重新发明轮子。 < P>这是一个带有库的工作代码,你可以看到有一个 HTTPS,它工作得很好: '
https://server.com/services/download?what=someFile&version=1
我尝试过使用,但得到的只是econnreference
。我知道我使用的URL是正确的,因为我可以简单地将它粘贴到浏览器中,它就工作了
你将如何解决这个问题?我认为自己编写节点脚本,但它感觉像是重新发明轮子。 < P>这是一个带有库的工作代码,你可以看到有一个<代码> HTTPS,它工作得很好:
'use strict';
module.exports = function(grunt) {
grunt.initConfig({
download: {
foo: {
src: ['https://nodejs.org/static/images/logos/nodejs-green.png'],
dest: '/tmp/'
},
}
});
require('load-grunt-tasks')(grunt);
grunt.loadNpmTasks('grunt-http-download');
grunt.registerTask('default', ['download']);
};
输出:
正在运行“下载:foo”(下载)任务
正在下载到/tmp/nodejs-green.png
下载完毕
完成,没有错误
它也适用于库:
'use strict';
module.exports = function(grunt) {
// Project Configuration
grunt.initConfig({
downloadfile: {
files: [{
url: 'https://nodejs.org/static/images/logos/nodejs-green.png',
dest: '/tmp',
name: 'test.png'
}]
},
});
require('load-grunt-tasks')(grunt);
grunt.loadNpmTasks('grunt-downloadfile');
grunt.registerTask('default', ['downloadfile']);
};
我是grunt downloadfile的创建者,对未能及时更新库并解决问题感到有点惭愧。但今天我发布了第2版。它支持HTTPS
请检查此处的文档:我可以看到您尝试的代码吗?我不想看到API代码,我想看到grunt文件的相关代码。是否使用grunt命令注册要执行的下载任务?是的,任务执行没有问题。如果我使用http,它会工作(在随机站点上),如果我使用https,它不会工作。而且我原来链接了错误的库,现在修复了!看起来,就像图书馆能做到这一点。我会很快尝试,并让你知道!它实际上工作得很好(第一个例子)。在我的情况下,第二个没有。