无法解析nodejs中的InputStreamResource响应

时间:2018-04-19 05:52:00

标签: node.js

如何在nodejs中阅读InputStreamResource

我们的REST API将响应返回为InputStreamResource。我们需要将此响应转换为xlsx文件或json格式。请帮忙

以下是代码:

var options = {
         host: 'xxxxxxxxxxxxxxxxx',
         port: xxxxx,
         path: '/eeeeee/axxxxxxx?code=' + req.query.code,
        method: 'GET',
        headers:{ 
            'user_id': req.headers.user_id,
            'access_token': req.headers.access_token 
         }
      };
      var req = https.request(options, function (res) {
        var decoder = new StringDecoder('utf8');
        res.on('data', function(chunk) {
            console.log(chunk)
            var textChunk = decoder.write(chunk);
            console.log(textChunk)
        });
      });
      req.end();
      req.on('error', function(e) {
        console.error(e);
    });

回应就是这样......

enter image description here

1 个答案:

答案 0 :(得分:0)

var req = https.request(options, function (res) {
    var resData = ''
    res.setEncoding('binary')
    res.on('data', function(chunk){
        resData += chunk
    })
    res.on('end', function(){
        // fs.writeFile('message1.xlsx', resData, 'binary', function(err){
        //     if (err) throw err
        //     console.log('File saved.')
        // })
        var new_wb = XLSX.read(resData, {type:'binary'});
        console.log('File saved.');
    })
});