node.js http.get xml is blank



http://www.hmrc.gov.uk/softwaredevelopers/rates/rates/exrates-monthly-0616.xml

我正在尝试将XML从上述HRMC网站URL获取到node.js(我打算稍后将其解析为JSON)。

作为HRMC状态

如果您必须将任何外币转换为海关和增值税目的,则应使用这些交换费率。

请在替代地方没有答案,我可以找到汇率

function hrmc(cb){
    var m=new Date().getMonth()+1;
    if(m<10){m='0'+m;}
    var y=((new Date().getFullYear()+'').substr(2));
    var req=require('http').get({host:'www.hmrc.gov.uk',path:'/softwaredevelopers/rates/exrates-monthly-'+m+y+'.xml'},function(res){
        var xml='';
        res.on('error',function(e){console.dir(['res error',e]);});
        res.on('data',function(chunk){xml+=chunk;});
        res.on('end',function(){
            //
            console.log(xml);// '' <--empty?
            //cb(xml);
            });});
    req.on('error',function(e){console.dir(['req error',e]);});}

问题是我得到一个空字符串,没有错误

它对我有用:

var http = require('http');    
http.get('http://www.hmrc.gov.uk/softwaredevelopers/rates/exrates-monthly-0616.xml', (response) => {
    var xml = '';
    response.on('data', function (chunk) {
        xml += chunk;
    });
    response.on('end', function() {
        console.log(xml); //not empty!
    })
}).on('error', (e) => {
    console.log('error: ' + e.message);
});

最新更新