Javascript 使用https下载文件的Grunt任务

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,它工作得很好: '

我需要一个grunt任务来下载一个托管在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,它不会工作。而且我原来链接了错误的库,现在修复了!看起来,就像图书馆能做到这一点。我会很快尝试,并让你知道!它实际上工作得很好(第一个例子)。在我的情况下,第二个没有。