D3.js - 从谷歌浏览器加载CSV文件

6

我有一个使用dc.js(d3.js+crossfilter.js)和ndx.csv文件的Web项目。当我在Visual Studio中将项目运行到Chrome浏览器中时,一切正常。现在,在构建项目并复制到其他计算机后,运行该项目。
问题出在这里。当我尝试在其他计算机上用Chrome浏览器运行Web项目[html文件]时,该浏览器会出现错误“XMLHttpRequest无法加载文件:///C:/Users/9901/Desktop/WebSite1/ndx.csv。跨域请求仅支持协议方案:http,data,chrome,chrome-extension,https,chrome-extension-resource。”我搜索了这个问题,但没有找到解决方法。 提示:

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

通常情况下,您需要一个Web服务器来测试dc.js应用程序。一个简单的Web服务器是内置于Python中,也许您可以使用它? - Gordon
4个回答

5
如果你不是Chrome的忠实用户,你可以使用Firefox。它默认就能够正常工作。

4

我之前也遇到过类似的问题,但是我用了一种简单的方法解决了它。

你不能从 .csv 文件中获取数据,因为主机和协议不同。

要解决这个问题,你应该运行一个简单的 Web 服务器。

下面的例子可以解决这个问题:

npm install -g http-server

http-server


太棒了!它对我很有效。谢谢。 - elite0107

3

我解决了我的问题:

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

5
你能提供一些截图或细节吗?我有同样的问题,不明白怎么做。 - Christophe D.
只需使用以下命令和参数启动Chrome:对于Windows系统,输入C:\PathTo\Chrome.exe" --allow-file-access-from-files,对于macOS系统,输入open -a "Google Chrome" -n --args --allow-file-access-from-files。(简单但不安全) - K. Symbol

2

2
我使用便携式Chrome。 - Hossein Ganjyar
我已经添加并启用了扩展,但解决方案仍然无法工作。 - Trilok Pathak

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接