Estoy pasando una matriz de objetos (valores de código duro) para realizar una solicitud de obtención con axios, pero cada vez obtengo un error como este:
Necesito ayuda en esto, soy nuevo en reaccionar js. En mi opinión, me estoy equivocando al hacer la matriz de objetos o creo que no podemos pasar una const a los axios.
función y matriz de objeto (valor de código duro)
const api = [ { "description": "", "durationday": "fullday", "end": "null", "id": 0, "location": "", "start": "null", "title": "", }, { "description": "yaaa!", "durationday": "absent", "end": "10-04-2021 12:10:00", "id": 1, "location": "perth", "start": "10-04-2021 12:10:00", "title": "holiday", }, { "description": "busy", "durationday": "fullday", "end": "10-22-2021 12:10:00", "id": 2, "location": "melbourne", "start": '10-19-2021 12:00:00', "title": "working", }, { "description": "dd", "durationday": "halfday", "end": "10-24-2021 12:10:00", "id": 3, "location": "updated perth", "start": "10-24-2021 12:10:00", "title": "updated holiday", } ] console.log(api) const getEvents = () => { axios.get(api) .then(response => { console.log(response.data) }) .catch(err => console.log("This is error for fetching", err)) } useEffect(() => { getEvents() }, []);Hay varias cosas aquí para hacer una solicitud API REST:
1- Es una solicitud GET, para seguir las reglas API REST, debe usar GET para recuperar recursos, por lo que no debe pasar un cuerpo.
2- El primer parámetro que debe usar al realizar una solicitud de API es el punto final de la URL como una cadena, por ejemplo: axios.get ("/ endpointPath"). Entonces...
3- Para enviar todos esos datos al servidor, puede hacerlo como una solicitud POST para enviar nuevos datos. Por ejemplo: axios.post(“/endpointPath”,cuerpo).entonces… en este caso, el cuerpo podría ser su API const (no necesita pasarlo como json si no está usando cartero u otro cliente)
4- Puede encontrar esto útil: https://stackoverflow.blog/2020/03/02/best-practices-for-rest-api-design/