È possibile effettuare richieste HTTP in JavaScript utilizzando l’oggetto XMLHttpRequest o l’API Fetch. Qua sotto sono illustrate entrambe le opzioni.
XMLHttpRequest:
```
var xhr = new XMLHttpRequest();
xhr.open(“GET”, “http://api.example.com/data”, true); // Metodo, URL, async
xhr.onreadystatechange = function () { // Richiamo questo quando la richiesta cambia stato
if (xhr.readyState 4 && xhr.status 200) // Check se la richiesta è completata con successo
console.log(JSON.parse(xhr.responseText));
}
xhr.send(); // Iniziali la richiesta
```
Fetch API:
```
fetch(“http://api.example.com/data”) // di default il metodo è GET
.then(response => response.json()) // Restituisce una promessa
.then(data => console.log(data)) // Data è il risultato del resolve della promessa
.catch(error => console.error(error)); // In caso di errore
```
POST con Fetch:
```
fetch(“http://api.example.com/data”, {
method: “POST”,
headers: {
“Content-Type”: “application/json”,
},
body: JSON.stringify(data), // Converti i dati in stringa JSON
})
.then(response => response.json())
.then(data => console.log(data))
.catch((error) => console.error(‘Error:’, error));
```
Per i metodi PUT e DELETE, il processo è lo stesso di POST, cambiare soltanto il metodo nella richiesta fetch da “POST” a “PUT” o “DELETE”. Ricorda anche di aggiungere l’id dell’oggetto da modificare o cancellare nell’URL, se necessario.