如何使用javascript读取本地json文件?

时间:2016-06-02 19:49:20

标签: javascript jquery json cross-domain

我想使用JS / jQuery从本地的JSON文件中加载数据。

我知道SO上至少有10个问题有相同的答案。

我不想要那些。在所有这些答案中,我得到了一个" jquery.min.js:4 XMLHttpRequest cannot load file:///C:/Users/.../js.json. Cross origin requests are only supported for protocol schemes: http, data, chrome, chrome-extension, https, chrome-extension-resource."

请建议我解决这个问题。如果您的建议是设置服务器并在那里托管文件然后使用它,请帮我做吗?

欢迎任何可能的工作建议(除了旧的使用脚本标记添加json等)。感谢。

3 个答案:

答案 0 :(得分:1)

您正在向本地文件系统发出http请求,这是不可能的。

使用文件API检查HTML5中的有限支持,但我仍然怀疑它是你想要的。

http://www.html5rocks.com/en/tutorials/file/dndfiles/

答案 1 :(得分:1)

使用JSON服务器https://github.com/typicode/json-server运行本地JSON服务器,而不是直接访问磁盘。

答案 2 :(得分:0)

您应该使用本地网络服务器,例如XAMPP / LAMP / MAMP或IIS / Apache。一个应该有用的相关问题是here。如果您真的只想要文件系统,那么可能有效的另一种解决方案是使用iframe和HTML5 FileSystem API。

修改 设置XAMPP时,将文件放入htdoc后,可能需要设置标题Access-Control-Allow-Origin *。这可以通过将其放入htdocs目录中的.htaccess文件来实现:

Header set Access-Control-Allow-Origin "*"