Tengo un archivo json en una carpeta de contenido dentro de mi proyecto asp.net:
<projectName>
\Content
NBCCJr.json
... y el código para acceder a él:
$.getJSON('~/Content/NBCCJr.json', function (data) {
$.each(data, function(i, dataPoint) {
// Bla
});
});
)
... pero no pasa nada cuando se llama al código; la consola del navegador dice, "No se pudo cargar el recurso: el servidor respondió con un estado de 404 (No encontrado)"
¿Por qué no se encuentra? ¿No es "tilde whack filename" la ruta correcta al archivo?
ACTUALIZAR
También lo probé con los "golpes" al revés:
$.getJSON('~\Content\NBCCJr.json', function (data) {
... y obtuve el mismo resultado (" No se pudo cargar el recurso: el servidor respondió con un estado de 404 (No encontrado) ")
ACTUALIZACIÓN 2
Luego probé sin un golpe antepuesto así:
$.getJSON('Content/NBCCJr.json', function (data) {
... y recibo este mensaje ambiguo en la consola:
*GET http://localhost:9702/Content/NBCCJr.json 404 (Not Found) jquery.js:8724
XHR finished loading: "http://localhost:9702/Content/NBCCJr.json".*
¿Entonces no se encontró y aún se cargó de todos modos?
ACTUALIZACIÓN 3
Cuando intenté navegar hasta el archivo en el navegador cambiando:
http://localhost:9702/Default.cshtml
...a:
http://localhost:9702/Content/NBCCJr.json
Recibí un mensaje informativo de WSOD de Vint Cerf, Tim Berners-Lee y / o Al Gore que decía:
Error HTTP 404.3 - No encontrado La página que está solicitando no se puede servir debido a la configuración de la extensión. Si la pagina es un script, agregue un controlador. Si el archivo debe descargarse, agregue un mapa MIME.
ACTUALIZACIÓN 4
Gracias a JAM, ahora está funcionando.
Tuve que agregar esto a Web.Config:
<system.webServer>
<staticContent>
<mimeMap fileExtension=".json" mimeType="application/json" />
</staticContent>
</system.webServer>