Tengo una API que obtiene registros de Mongodb. Cuando llamo registros desde db, vienen registros, no hay problema. Pero no funciona en el host. Hay un error en la consola como Failed to load resource: the server responded with a status of 404 () api/improve-language?cat=general:1 .
Mis códigos donde estoy tratando de obtener datos:
useEffect(() => { getAllData(category) }, []) async function getAllData(cat){ if(cat){ cat = `?cat=${cat}` } else{ cat = `` } axios .get(`/api/improve-language${cat}`) .then(res => { setAllWords(res.data) setNeverAskedWords(res.data) newQuestionAndAnswers(res.data) }) .catch(err =>{ console.log(err) }) }El error 404 significa que la dirección es incorrecta.
Probablemente su API REST y el cliente Next JS se estén ejecutando en diferentes direcciones.
¿Puede llamar a su punto final GET con la dirección exacta como http://localhost:3000/api/improve-language ?
PD. para aplicaciones listas para producción, será mejor pasar la dirección API por variable env, para que pueda cambiarla dinámicamente.