È ansible eseguire una richiesta HTTP Head utilizzando esclusivamente un XMLHTTPRequest in JavaScript?
La mia motivazione è di conservare la larghezza di banda.
In caso contrario, è ansible falsificarlo?
Semplice, usa solo il metodo HEAD, anziché GET o POST:
function UrlExists(url, callback) { var http = new XMLHttpRequest(); http.open('HEAD', url); http.onreadystatechange = function() { if (this.readyState == this.DONE) { callback(this.status != 404); } }; http.send(); }
Questo è solo un breve esempio per mostrare come utilizzare il metodo HEAD. Il codice di produzione può richiedere più callback a grana fine per diversi stati di risultato (successo, errore, timeout) e può utilizzare diversi gestori di eventi ( onload
, onerror
e ontimeout
piuttosto che onreadystatechange
).
Un object XMLHTTPRequest dovrebbe avere
getAllResponseHeaders(); getResponseHeader("header-name")
definito su di esso