有什么办法可以解决我收到的CORS错误吗?
我正在写有关d3的课程。我希望学生能够将JSON,CSV和其他数据加载到他们的网页上。通过右键单击并转到“打开方式”>“浏览器”(即没有服务器),指示他们在本地打开html页面。将数据作为要点加载到github上并尝试加载时,出现CORS错误。当我将文件本地存储在与网页相同的文件夹中并以这种方式提供时,也会出现错误。后者使我感到惊讶,因为网页和数据来自同一位置。
这是提供给学生的虚假数据,仅用于发展目的。有什么办法可以在github上更改开发文件的设置,还是可以在本地进行一些更改?
谢谢 艾玛
答案 0 :(得分:1)
由于网页和数据来自同一位置,后一种使我感到惊讶。
对于大多数电子邮件客户端,将作为附件附加到电子邮件的HTML文档作为附件,然后双击您的电子邮件客户端,可以从硬盘上打开该文档。该位置与硬盘上每个文件的位置相同。允许任何下载的HTML文档中的JS自由控制读取数据是非常危险的。
有什么办法可以在github上更改开发文件的设置
否
是否有本地方法?
让他们安装HTTP服务器并在其中提供HTML和您的数据文件。
您还可以投资一些廉价的托管服务(AWS S3实例对于您可能会获得的使用级别是免费的),并在其中配置了CORS来托管文件。
答案 1 :(得分:1)
如果将json或csv存储在本地,则使用基本的http服务器打开网页将解决该错误。
您可以查看python's simple http server并在命令行中使用以下命令:
cd folder/of/the/web/page
python -m SimpleHTTPServer 8000
然后在浏览器中打开URL localhost:8000