D3.js - 从 chrome 加载 csv 文件

D3.js - load csv file from chrome

我有一个带有 dc.js(d3.js+crossfilter.js)和 ndx.csv 文件的 webProject。当我 运行 从 visual studio 投影到 chrome 时,一切正常。现在在构建项目并复制到其他计算机后,运行 那。
问题就在这里。当我尝试在其他计算机上 运行 webProject [html 文件] Chrome 时,这个浏览器有错误“XMLHttpRequest 无法加载文件:///C:/Users/9901/Desktop/WebSite1/ndx.csv。跨源请求仅支持协议方案:http、数据、chrome、chrome-extension, https, chrome-extension-resource." 我搜索了这个问题,但没有找到解决方案。 提示:

  1. 我只想使用浏览器"Chrome Portable",否则IE和FireFox没问题
  2. 我在 运行 中的地址栏:“file:///C:/Users/User-1/Desktop/WebSite1/Index.html".
  3. 我在其他计算机.
  4. 中没有网络服务器

如果您不想使用本地 Web 服务器,可以从 chrome 网上商店安装 CORS 扩展。

  1. 转到https://chrome.google.com/webstore/detail/allow-control-allow-origi/nlfbmbojpeacfghkpbjhddihlkkiljbi
  2. 安装 CORS 扩展
  3. 启用扩展程序(您可以在地址栏旁边看到它的图标)
  4. 打开你的html文件

我解决了我的问题:

  1. 创建快捷方式并打开它的属性。
  2. --allow-file-access-from-files 添加到目标字段字符串的末尾。

如果您未与 Chrome 结婚,则可以使用 Firefox。它默认工作。

我之前遇到过类似的问题,我用一个简单的方法解决了它。 您无法从 .csv 文件中获取数据,因为主机和协议不同。

要解决此问题,您应该运行 一个简单的网络服务器。 以下示例将起作用。

npm install -g http-server

http-server