Recientemente he configurado un servidor local con xampp como campo de pruebas y he empezado a hacer algunas pruebas fetch(). Estoy tratando de obtener un json que se encuentra en el servidor para probar alguna creación dinámica de DOM, pero el error sigue apareciendo.

He buscado problemas similares, pero solo he encontrado respuesta para el "Token inesperado <" y ya me he ocupado de eso. También he validado el archivo json por si acaso.

Aquí está el js que tengo.

fetch("./doc/ayuntamientos.json")
  .then(function(resp){
    return resp.json();
  })
  .then(function(data){
    console.log(data.municipios);
  });

El json

{
  "municipios": [
    {
      "municipio": "Almedíjar",
      "sitio": "Ayuntamiento",
      "direccion": "Plaza Ayuntamiento, 1",
      "tlf": "964 137 018",
      "mail": "info@almedijar.es"
    },
    {
      "municipio": "Altura",
      "sitio": "Ayuntamiento",
      "direccion": "Crta. San Vicente, 2",
      "tlf": "964 146 384",
      "mail": "info@altura.es"
    },
    {
      "municipio": "Azuébar",
      "sitio": "Ayuntamiento",
      "direccion": "C/Excma Diputación, 25",
      "tlf": "964 650 006",
      "mail": "info@azuebar.es"
    },
    {
      "municipio": "Bejís",
      "sitio": "Ayuntamiento",
      "direccion": "C/Virgen del Loreto, 2",
      "tlf": "964 120 161",
      "mail": "info@bejis.es"
    },
    {
      "municipio": "Benafer",
      "sitio": "Ayuntamiento",
      "direccion": "Plaza Nueva, 1",
      "tlf": "964 764 111",
      "mail": "info@benafer.es"
    },
    {
      "municipio": "Castellnovo",
      "sitio": "Ayuntamiento",
      "direccion": "Plaza Ayuntamiento, 2",
      "tlf": "964 137 305",
      "mail": "info@castellnovo.es"
    },
    {
      "municipio": "Caudiel",
      "sitio": "Ayuntamiento",
      "direccion": "Plaza España, 1",
      "tlf": "964 144 049",
      "mail": "info@caudiel.es"
    },
    {
      "municipio": "Chóvar",
      "sitio": "Ayuntamiento",
      "direccion": "Plaza Iglesia, 1",
      "tlf": "964 651 024",
      "mail": "info@chovar.es"
    },
    {
      "municipio": "El Toro",
      "sitio": "Ayuntamiento",
      "direccion": "Plaza Iglesia, 1",
      "tlf": "964 123 001",
      "mail": "info@eltoro.es"
    },
    {
      "municipio": "Fuente la Reina",
      "sitio": "Ayuntamiento",
      "direccion": "C/Barcelona",
      "tlf": "964 145 701",
      "mail": "info@fuentelareina.es"
    },
    {
      "municipio": "Geldo",
      "sitio": "Ayuntamiento",
      "direccion": "Plaza D.Antonio Ferriz Díaz, 4",
      "tlf": "964 711 209",
      "mail": "info@geldo.es"
    },
    {
      "municipio": "Jérica",
      "sitio": "Ayuntamiento",
      "direccion": "C/Historiador Vayo,19",
      "tlf": "964 129 177",
      "mail": "ayuntamiento@jerica.es"
    },
    {
      "municipio": "Navajas",
      "sitio": "Ayuntamiento",
      "direccion": "C/De Valencia, 7",
      "tlf": "964 710 801",
      "mail": "ayuntamiento@navajas.es"
    },
    {
      "municipio": "Pina de Montalgrao",
      "sitio": "Ayuntamiento",
      "direccion": "Pina Ayuntamiento, 1",
      "tlf": "964 121 031",
      "mail": "info@pinademontalgrao.es"
    },
    {
      "municipio": "Soneja",
      "sitio": "Mancomunidad Alto Palancia",
      "direccion": "C/Alto Palancia, 4",
      "tlf": "964 132 740",
      "mail": "info@altopalancia.es"
    },
    {
      "municipio": "Sot de Ferrer",
      "sitio": "Ayuntamiento",
      "direccion": "Palancia España, 1",
      "tlf": "964 135 127",
      "mail": "info@sotdeferrer.es"
    },
    {
      "municipio": "Teresa",
      "sitio": "Ayuntamiento",
      "direccion": "C/Montoliu, 2",
      "tlf": "964 141 192",
      "mail": "info@teresa.es"
    },
    {
      "municipio": "Torás",
      "sitio": "Ayuntamiento",
      "direccion": "Palancia Iglesia, 1",
      "tlf": "964 120 238",
      "mail": "info@toras.es"
    },
    {
      "municipio": "Viver",
      "sitio": "Ayuntamiento",
      "direccion": "Palancia Mayor del Palancia, 1 ",
      "tlf": "964 141 006",
      "mail": "info@viver.es"
    }
  ]
}

Sólo estoy confundido y necesito un poco de guía. Gracias por su tiempo.

0
Sr.Cuervo 4 nov. 2019 a las 19:04

1 respuesta

fetch("./doc/ayuntamientos.json")

Supongo que es porque usted está tratando de acceder al sistema de archivos directamente con la notación ".doc/..", y no está permitido por razones de seguridad, simplemente exponer una carpeta estática en el servidor o crear un punto de conexión que devuelva el json

0
Karim 4 nov. 2019 a las 16:21
58697063