繁体   English   中英

使用node.js从POST请求下载文件

[英]Download file from POST request using node.js

我有一个带有“导出到Excel”按钮的页面,我想在node.js中做到这一点。 我在Chrome中使用了DevTools来发现,该页面在发布请求后下载了文件,因此我需要重新创建它。

chrome屏幕截图

var request = require('request'),
fs = require('fs');

request.post(
    'http://pif.investfunds.ru/analitics/coefficients/',
    { form: { rmShowFunds: 'true',
              strFundName: '',
              sbxFundID: '',
              sbxObjFundInvest: '',
              SR: 'on',
              Srtn: 'on',
              date: '2016-06-30',
              Save2XLS: '1' } },
    function (error, response, body) {
        if (!error && response.statusCode == 200) {
            console.log(body)
        }
    }
);

我认为我应该使用类似于request('http://google.com/doodle.png').pipe(fs.createWriteStream('doodle.png'))

但我不知道如何。

感谢大伙们。

你做对了。 因此,您的代码将像:

request.post(
        'http://pif.investfunds.ru/analitics/coefficients/',
        {
            form: {
                rmShowFunds: 'true',
                strFundName: '',
                sbxFundID: '',
                sbxObjFundInvest: '',
                SR: 'on',
                Srtn: 'on',
                date: '2016-06-30',
                Save2XLS: '1'
            }
        }
    )
    .on('error', function(err) {
        // error handling
    })
    .on('finish', function(err) {
        // request is finished
    })
    .pipe(fs.createWriteStream('filename.xls'));

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM