Buonasera, sto facendo un'applicazione con React per il frontend e Node con Express per il backend.
Premessa: sono uno studente di quinta superiore, e questo è un compito; inoltre ci tengo a precisare che non voglio avere la soluzione e basta, ma vorrei capire il motivo per cui mi si presenta questo problema…
Sostanzialmente, il backend prende i dati da un database mysql e il frontend richiama il backend con axios (o fetch) e ottiene i dati desiderati. Si tratta di un database relazionale contenente delle specie animali.
Ora ho un problema, perchè quando faccio la chiamata al backend in questo modo non ottengo nessun problema
axios.get(`http://127.0.0.1:8080/info/species/${ selectedPark }`)
.then(res => console.log(res.data.result)
Invece, quando scrivo il seguente codice, react mi da questo errore: R_CON_COUNT_ERROR: Too many connections.
axios.get(`http://127.0.0.1:8080/info/species/${ selectedPark }`)
.then(res => setSpecies(res.data.result))
Immagino che sia un errore di mysql che comunica che sono state effettuate troppe richieste. Come vedete però l'unica cosa che ho aggiunto è una funzione (setSpecies) che si occupa di salvare i dati in species, che ho definito usando lo state di React:
const [species, setSpecies] = useState([])
Non riesco a capire: il codice fa la stessa identica cosa e le stesse richieste al backend sia nel primo codice che nel secondo, ma nel secondo caso il programma si blocca. Qualcuno riuscirebbe a spiegarmi il perchè? Grazie mille