Az XMLHttpRequest (XHR) egy API, ami böngészőkön belül elérhető olyan interpreteres nyelvben, mint például a JavaScript. Arra használható, hogy HTTP vagy HTTPS protokollon keresztül direkt küldjünk kéréseket egy webszerverhez, aztán majd annak a válaszát közvetlenül visszakapjuk például a kérő szkriptben.[1] Fejlesztői változatban minden fontosabb böngésző támogatja URI sémákat HTTP vagy HTTPS protokollon keresztül. A visszaküldött adat, amelyet a szervertől kapunk vissza lehet JSON,[2] XML,[3] HTML, vagy egyszerű szöveg.[4] A visszakapott adat közvetlenül használható arra, hogy a böngészőben az aktív weboldal tartalmát módosítsuk, az oldal újratöltése nélkül, az aktív oldalhoz tartozó DOM szerkesztésével. A visszakapott adat egyből kiértékelhető kliens oldalon lévő szkripttel, például a JSON formátumú válasz, ami nagyon egyszerűen átkonvertálható a kliens oldalon lévő szkript által használt adat objektummá. XMLHttpRequestnek nagyon fontos szerepe van az Ajax web fejlesztési technikában. Jelenleg több weboldal is használja ezt a fajta technikát, annak érdekében, hogy minél használhatóbbak illetve, minél gyorsabban letölthetőek legyenek az adott oldalak. Több neves weboldal is létezik már, amelyek felhasználják ezt a technológiát, pl.: Gmail, Google Maps, Facebook és sokan mások.