【问题标题】:404 Error while trying access JSON file using D3 Framework尝试使用 D3 框架访问 JSON 文件时出现 404 错误
【发布时间】:2014-01-27 08:43:00
【问题描述】:

您好,我正在学习 D3 框架,但无论我做什么,我似乎都无法加载我的 Json 文件。我在服务器上运行脚本,并且 JSON 文件与运行它的 html/d3 文件位于同一目录中,但是当我查看控制台时它一直给我一个 404 错误。

所以我在 www.mywebsite.com 上运行它,然后我将 Json 文件存储在 www.mywebsite.com/mydata.json
谁能帮帮我?

<script src="http://d3js.org/d3.v3.min.js" charset="utf-8"></script> 
</head>
<body>
    <script type="text/javascript">

    d3.json("mydata.json", function(data){ 

        var canvas= d3.select("body").append("svg")
        .attr("width",500)
        .attr("height", 500)

        canvas.selectAll("rect")
            .data(data)
            .enter()
                .append("rect")
                .attr("width", function(d){ return d.age *10;})
                .attr("height", 50)
                .attr("y", function(d ,i){ return i* 50; })
                .attr("fill", "blue");
    });

    </script>

【问题讨论】:

  • 这个html文件和mydata.json在同一个目录吗?
  • 是的,无论是在本地还是在服务器上,我很确定问题是我编写的 JSON 文件被保存为文本/html 文件。我将它保存为 mydata.json 但因为我是在 sublime 2 中编写的,所以我认为有问题

标签: javascript json web d3.js http-status-code-404


【解决方案1】:

看看thisthis 的陷阱。之后如果您成功访问 json,请告诉我们。

【讨论】:

  • 所以我听从了其中一位指南的建议,我在调试器周围戳了一下,结果发现我的 JSON 文件被保存为 Text/html,即使我给了它 mydata.json 文件类型。我在 sublime 2 中写的,你知道有什么解决方法吗?
  • 解决方法是您的文件将是适当的 json 类型,或者您只需将 *.json 重命名为 *.txt。我不会为 Sublime Text 2 或任何其他编辑器将您的 json 保存为 text/html 类型的根本原因而烦恼,我认为您也不应该... :) 最重要的是:您可以在您的网页上显示数据吗?
  • 所以不是 d3.json("mydata.json", function(data){ 我应该保存为 txt 并把 d3.json("mydata.txt", function(data)? 我怀疑我的文本编辑器是我对如何获得正确格式感到困惑的问题。感谢您的帮助
  • 我不知道为什么这是解决方案,但它确实有效!非常感谢,如果您有时间知道为什么将其保存为文本文件可以找到 JSON 吗?
【解决方案2】:

你们不需要更改任何格式。只需要更改服务器中的一些设置。这里我使用的是 IIS 服务器,所以我测试了我的文件并为 JSON 文件遇到了相同的 404 错误,我进行了以下更改,它就像一个魅力。如果您使用的是 IIS 服务器,您只需按照此操作...

第 1 步:打开 IIS 服务器并转到 MIME 类型

Step2:点击右侧添加,添加JSON扩展,重启服务器

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-03-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-02
    • 2013-09-22
    相关资源
    最近更新 更多