Así que este es mi código api, estoy tratando de solicitar esta api a través de script.js en mi interfaz, pero aparece un error.
var express = require("express"); var app = express(); const cors = require('cors') port = 8080 app.use(cors( { origin: "*", } )) app.get('/tshirt', (req, res) =>{ res.status(200).send({ tshirt: '👕', size: 'large' }) }) app.post('/tshirt/:id', (req, res) => { const { id } = req.params; const { logo } = req.body; if (!logo) { res.status(418).send({message: 'We need a logo!'}) } res.send({ tshirt: `👕 with your ${logo} and ID of ${id}`, }) }) app.listen(port, () => { console.log(`Example app listening on port ${port}`) })y esta es la solicitud de búsqueda en script.js
const api_url = 'localhost:8080/tshirt' async function getTshirt() { const response = await fetch (api_url); const data = await response.json(); const { tshirt, size } = data; console.log(size) console.log(tshirt) } getTshirt()Pero luego me sale este error
Uncaught (in promise) TypeError: NetworkError when attempting to fetch resource. getTshirt http://127.0.0.1:5500/script.js:3 <anonymous> http://127.0.0.1:5500/script.js:10Intenté buscar esto en Google y buscar en todo el sitio, pero ninguna solución funciona. Por favor ayuda.
Debe detectar cualquier posible rechazo de promesa porque si se rechaza y no tiene un controlador para ello, obtendrá este error y no habrá hecho nada inteligible con el error:
getTshirt().catch(err => { console.log(err); // do something with the error here }); En el ejemplo que muestra arriba, parece que está obteniendo algún tipo de NetworkError cuando intenta acceder a su api_url . Por lo tanto, tendrá que investigar los motivos de ese error e intentar solucionar por qué está recibiendo ese error en primer lugar. Pero, aún así, siempre deberías estar atrapando rechazos de promesas.