La funzione fetch in JavaScript è un metodo moderno per effettuare richieste HTTP. Gli endpoint sono URL specifici che rappresentano le risorse di un server. Utilizzando fetch, è possibile inviare richieste agli endpoint per recuperare o inviare dati.
Fetch è una funzione integrata in JavaScript utilizzata per effettuare richieste HTTP asincrone. È una promessa (Promise) che risolve la sostituzione del vecchio XMLHttpRequest
e fornisce un modo più semplice e leggibile per lavorare con richieste e risposte HTTP.
La sintassi di base di fetch è:
fetch(url, options)
.then(response => response.json())
.then(data => console.log(data))
.catch(error => console.error('Errore:', error));
Il metodo fetch
prende due argomenti: l'URL della risorsa da recuperare e un oggetto opzionale options
che può includere il metodo della richiesta (GET, POST, ecc.), intestazioni e il corpo della richiesta.
Un semplice esempio di richiesta GET per recuperare dati da un endpoint:
fetch('https://api.example.com/data')
.then(response => {
if (!response.ok) {
throw new Error('Network response was not ok');
}
return response.json();
})
.then(data => {
console.log(data);
})
.catch(error => {
console.error('There has been a problem with your fetch operation:', error);
});
Un esempio di richiesta POST per inviare dati a un endpoint:
fetch('https://api.example.com/data', {
method: 'POST',
headers: {
'Content-Type': 'application/json'
},
body: JSON.stringify({
name: 'John',
age: 30
})
})
.then(response => {
if (!response.ok) {
throw new Error('Network response was not ok');
}
return response.json();
})
.then(data => {
console.log('Success:', data);
})
.catch(error => {
console.error('There has been a problem with your fetch operation:', error);
});
Un endpoint è un URL specifico che rappresenta una risorsa sul server. Gli endpoint sono usati per definire dove e come le richieste HTTP devono essere indirizzate.
GET /api/users
recupera una lista di utenti.POST /api/users
crea un nuovo utente.PUT /api/users/1
aggiorna l'utente con ID 1.DELETE /api/users/1
elimina l'utente con ID 1.Combiniamo fetch ed endpoint per interagire con le risorse del server in modo efficace. Ecco un esempio di una funzione che utilizza fetch per inviare una richiesta POST a un endpoint:
const createUser = (user) => {
fetch('https://api.example.com/users', {
method: 'POST',
headers: {
'Content-Type': 'application/json'
},
body: JSON.stringify(user)
})
.then(response => {
if (!response.ok) {
throw new Error('Network response was not ok');
}
return response.json();
})
.then(data => {
console.log('User created:', data);
})
.catch(error => {
console.error('There has been a problem with your fetch operation:', error);
});
};
// Esempio di utilizzo
const newUser = { name: 'Alice', age: 25 };
createUser(newUser);
Fetch e gli endpoint sono strumenti essenziali per lavorare con le API in JavaScript. Fetch rende semplice effettuare richieste HTTP asincrone, mentre gli endpoint forniscono punti di accesso chiari e definiti alle risorse del server.