JavaScript d3.csv()给出错误:读取ECONNRESET

时间:2017-07-18 12:15:03

标签: javascript node.js csv d3.js

我正在尝试测试d3的d3.csv()csv读取功能,但仍然出现错误

{ 'Error: read ECONNRESET': ' at exports._errnoException (util.js:1050:11)' }

我的测试脚本test1.js位于反应应用目录中。

admin:reactStockCharts jvr23$ tree -L 1
.
├── BCHARTS-BITSTAMPUSD.csv
├── README.md
├── node_modules
├── package-lock.json
├── package.json
├── public
├── reactStockCharts.sublime-project
├── reactStockCharts.sublime-workspace
├── src
└── test1.js

测试csv文件BCHARTS-BITSTAMPUSD.csv位于同一目录中。内容如下:

Date,Open,High,Low,Close,Volume (BTC),Volume (Currency),Weighted Price
2017-07-11,2326.12,2399.0,2242.62,2336.78,16815.9742946,39367980.6825,2341.10614068
2017-07-10,2504.0,2527.88,2261.85,2323.45,17296.3404527,41650843.7716,2408.07261429
2017-07-09,2550.13,2564.65,2500.5,2502.28,4483.14413363,11362427.9698,2534.47750755
2017-07-08,2501.46,2555.0,2462.0,2550.07,5405.89088691,13584489.5168,2512.90486637
2017-07-07,2599.01,2605.0,2475.0,2501.46,9430.6154578,23870564.3605,2531.17778658

test1.js脚本内容:

var d3 = require("d3");

d3.csv("BCHARTS-BITSTAMPUSD.csv", function(err, data) {
  console.log(err);
  console.log(data[0]);
});

执行脚本然后给出

admin:reactStockCharts jvr23$ node test1.js 
null
{ 'Error: read ECONNRESET': '    at exports._errnoException (util.js:1050:11)' }

d3软件包之前通过$ npm i d3成功安装。

3 个答案:

答案 0 :(得分:0)

我能够通过替换

解决问题
select *
  from ci_infoobjects
 where si_schedule_status = 9
   and si_kind = 'publication'

具有完整路径规范

var d3 = require("d3");

d3.csv("BCHARTS-BITSTAMPUSD.csv", function(err, data) {
  console.log(err);
  console.log(data[0]);
});

答案 1 :(得分:0)

var d3 = require("d3");

d3.csv("file:///full/path/to/BCHARTS-BITSTAMPUSD.csv", function(err, data) {
  console.log(err);
  console.log(data);
}); 
当您想在线部署它时,

不是解决方案,因为路径会发生变化。您应该使用相对路径,如下所述:https://coderwall.com/p/8nhqeg/relative-paths-from-the-root-in-javascript

答案 2 :(得分:0)

您可以使用path模块获取绝对网址

var path = require("path");
var d3 = require("d3");

d3.csv(path.resolve("BCHARTS-BITSTAMPUSD.csv"), function(err, data) {
    console.log(err);
    console.log(data);
});
相关问题