Why is my json file not found?

asp.net, google-chrome-devtools, jquery, json

Solution

Have you tried removing the `~` ?

As in:

$.getJSON('/Content/dumboJr.json', function (data) {
    $.each(data, function(i, dataPoint) {
        // Bla
      });
  });
)

To allow the IIS to serve JSON files, try adding this to your web.config:

<staticContent>
    <mimeMap fileExtension=".json" mimeType="application/json" />
</staticContent>

Problem

I have a json file in a Content folder within my asp.net project: ``` <projectName> \Content NBCCJr.json ``` ...and the code to access it: ``` $.getJSON('~/Content/NBCCJr.json', function (data) { $.each(data, function(i, dataPoint) { // Bla }); }); ) ``` ...but nothing happens when the code is called; the browser console says, "Failed to load resource: the server responded with a status of 404 (Not Found)" Why is it not found? Isn't "tilde whack filename" the correct route to the file? UPDATE I also tried it with the "whacks" backwards: ``` $.getJSON('~\Content\NBCCJr.json', function (data) { ``` ...and got the same result ("Failed to load resource: the server responded with a status of 404 (Not Found)") UPDATE 2 Then I tried it sans a prepended whack thusly: ``` $.getJSON('Content/NBCCJr.json', function (data) { ``` ...and I get this ambiguous message in the console: ``` *GET http://localhost:9702/Content/NBCCJr.json 404 (Not Found) jquery.js:8724 XHR finished loading: "http://localhost:9702/Content/NBCCJr.json".* ``` So it was not found and yet loaded anyway? UPDATE 3 When I attempted to navigate to the file in the browser by changing: ``` http://localhost:9702/Default.cshtml ``` ...to: ``` http://localhost:9702/Content/NBCCJr.json ``` I got an informative WSOD message from Vint Cerf, Tim Berners-Lee, and/or Al Gore saying: HTTP Error 404.3 - Not Found The page you are requesting cannot be served because of the extension configuration. If the page is a script, add a handler. If the file should be downloaded, add a MIME map. UPDATE 4 Thanks to JAM, it is now working. I had to add this to Web.Config: ``` <system.webServer> <staticContent> <mimeMap fileExtension=".json" mimeType="application/json" /> </staticContent> </system.webServer> ```

Original source

Related problems