Files
obsidian/Веб/Клиент-сервер/XMLHTTPRequest.md
T
roma-dxunvrs 12a473f46e
deploy / Pull and Restart (push) Successful in 17s
web update
2026-10-04 19:57:51 +03:00

42 lines
1.4 KiB
Markdown

- XMLHTTP - набор API, позволяющий осуществлять HTTP-запросы к серверу без необходимости перезагружать страницу
- Данные можно пересылать в виде [XML](../Форматы%20данных/XML.md), [JSON](../Форматы%20данных/JSON.md), [HTML](../Фронтенд/HTML.md) или просто неструктурированным текстом
- При пересылке используется [HTTP](../Сеть%20и%20API/HTTP.md)
```JavaScript
var req;
function loadXMLDoc(url) {
req = null;
if (window.XMLHttpRequest) {
try {
req = new XMLHttpRequest();
} catch (e) {}
} else if (window.ActiveXObject) { // более старая версия
try {
req = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
req = new ActiveXObject("Microsoft.XMLHTTP"); // вообще древняя версия
} catch (e) {}
}
}
if (req) {
req.open("GET", url, true); // true - асинхронно
req.onreadystatechange = processReqChange; // callback
req.send(null);
}
}
function processReqChange() {
try {
if (req.readyState === 4) {
if (req.status === 200) {
// обработка ответа
} else {
// обработка ошибка, доступен req.statusText
}
}
} catch (e) {
// баги самого XMLHttpRequest
}
}
```