Node.js + Bluebird + csv:额外项目
我有下面的代码下载CSV文件:
function download_csv(symbol) { var req_url = url + '&s=' + symbol var filename = '/prices/' + symbol + '.csv' return request.getAsync(req_url) .then(function(resp) { fs.writeFileAsync(filename, resp) }) } Promise.map(symbols, download_csv, {concurrency: 128}) .error(function(e) {console.error('error ocurred: ', e.message)}) .done(function() {console.log('done')})
当我打开csv文件时,第一行右移1列:
[object Object] Date Open High Low Close Volume Adj Close
第一列应该说Date,而不是[object Object]。 我的代码中有什么错误?
值是你可以.spread
的[response, body]
的数组。
function download_csv(symbol) { var req_url = url + '&s=' + symbol var filename = '/prices/' + symbol + '.csv' return request.getAsync(req_url).spread(function(response, body) { // Also add return statement here, very important return fs.writeFileAsync(filename, body) }) }
这是因为callback签名是:
callback(err, response, body)