English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
L'oggetto XMLHttpRequest viene utilizzato per scambiare dati con il server.
Tutti i browser moderni (Chrome, Firefox, IE7+, Edge, Safari, Opera) hanno un oggetto XMLHttpRequest integrato.
XMLHttpRequest permette di aggiornare asincronamente la pagina web scambiando dati con il server web.
Puoi recuperare dati da un URL senza aggiornare l'intera pagina.
Questo permette alla pagina web di aggiornare una parte della pagina senza interrompere l'operazione dell'utente.
Prima di eseguire la comunicazione AJAX tra client e server, è necessario creare un'istanza dell'oggetto XMLHttpRequest, come segue:
Sintassi:
var request = new XMLHttpRequest();
var httpRequest = new XMLHttpRequest();Testa per vedere‹/›
Per motivi di sicurezza, i browser moderni non permettono l'accesso a domini incrociati.
Questo significa che la pagina web e il file richiesto che tenta di caricarlo devono essere situati sullo stesso server.
Gli esempi su oldtoolbag.com aprono tutti i file richiesti situati nel dominio oldtoolbag.com.
Se si desidera utilizzare l'esempio sopra menzionato su una delle tue pagine web, il file richiesto deve essere situato sul tuo server.
Le vecchie versioni di Internet Explorer (6 e precedenti) utilizzano oggetti ActiveX invece dell'oggetto XMLHttpRequest.
Sintassi:
var request = new ActiveXObject("Microsoft.XMLHTTP");
Per gestire IE6 e versioni precedenti, controlla se il browser supporta l'oggetto XMLHttpRequest, altrimenti crea un oggetto ActiveX:
var httpRequest; if (window.XMLHttpRequest) { // Oggi i browser più diffusi (Chrome, Mozilla, Safari, IE7+, ...) httpRequest = new XMLHttpRequest(); else if (window.ActiveXObject) { // <= IE 6 o versioni di IE precedenti httpRequest = new ActiveXObject("Microsoft.XMLHTTP"); }Testa per vedere‹/›
La tabella seguente elenca tutte le proprietà dell'oggetto XMLHttpRequest:
Proprietà | Descrizione |
---|---|
onreadystatechange | Definire la funzione da chiamare quando cambia l'attributo readyState |
readyState | Mantenere lo stato di XMLHttpRequest: 0:Richiesta non inizializzata 1:Connessione al server stabilita 2:Richiesta ricevuta 3:Elaborazione della richiesta 4:Richiesta completata e risposta pronta |
responseText | Restituire i dati di risposta in forma di stringa |
responseXML | Restituire i dati di risposta come dati XML |
status | Restituire il numero di stato della richiesta: 200:“OK” 403:“Forbidden” 404:“Not Found” Per la lista completa, visitareCodice di stato HTTP di riferimento |
statusText | Restituire il testo dello stato (ad esempio, “OK”o“Not Found”) |
La tabella seguente elenca tutti i metodi dell'oggetto XMLHttpRequest:
Metodo | Descrizione |
---|---|
new XMLHttpRequest() | Creare un nuovo oggetto XMLHttpRequest |
abort() | Annullare la richiesta corrente |
getAllResponseHeaders() | Restituire le informazioni dell'intestazione |
getResponseHeader() | Restituire informazioni specifiche dell'intestazione |
open(method, url, async) | Specificare la richiesta method:tipo di richiestaGEToPOST url:posizione del file async:true(asincrono)o false(sincrono) |
send() | per inviare la richiesta a UtilizzatoGETIl server della richiesta |
send(string) | per inviare la richiesta al server. UtilizzatoPOSTRichiesta |
setRequestHeader(header, value) | Impostare l'intestazione HTTP della richiesta header:Specificare il nome dell'intestazione value:Specificare il valore dell'intestazione |